Borrar el contenido de los controles II

Incluye controles GroupBox y TabControl

Fecha: 02/Sep/2005 (22 de Agosto de 2005)
Autor: Ing. Fernando Luque Sánchez - DCE 4 Estrellas

[email protected]


Sres. Desarrolladores, este aporte pretende ahorrar algo de tiempo en las tareas de la eliminación del contenido de los controles en la tarea de agregar registros.

La primera entrega esta en el link:
http://www.elguille.info/colabora/NET2005/FernandoLuque_BorrarContenidos.htm

Algo de teoría del uso de controles en:
http://www.elguille.info/colabora/puntoNET/FernandoLuque_Controles.htm
http://www.elguille.info/colabora/NET2005/FernandoLuque_ControlesListaBD.htm

El manejo de los TabPages del control TabControl
http://www.elguille.info/colabora/NET2005/FernandoLuque_Control_TabControl.htm

Sobre el control ComboBox
http://www.elguille.info/colabora/NET2005/FernandoLuque_El_Control_ComboBox.htm

Sobre el control ListBox
http://www.elguille.info/colabora/NET2005/FernandoLuque_El_Control_ListBox.htm

Sobre el control ListView
http://www.elguille.info/colabora/NET2005/FernandoLuque_Control_ListView.htm
http://www.elguille.info/colabora/NET2005/FernandoLuque_Control_ListViewII.htm
http://www.elguille.info/colabora/NET2005/FernandoLuque_ListViewAvanzado.htm
http://www.elguille.info/colabora/NET2005/FernandoLuque_ListViewBD.htm

Ante la llegada de inquietudes de como borrar ListViews, como borrar el contenido de las cajas de texto o de los controles contenidos en un GroupBox o como borrar el contenido de los controles en un control TabControl, les comparto el ejemplo ampliado con algunas sugerencias.

  1. Utilice siempre procedimientos Sub o Function optimizando el código, no abuse de estos.
  2. Para este tipo de procedimientos en aplicaciones MDI puede definirlos como públicos en un módulo y reducir considerablemente las líneas de código.
  3. Si la cantidad de campos de una tabla es muy grande, en el formulario utilice controles TabControl, recuerde que este ES UN CONTENEDOR como el control GroupBox

 

Nuestro Formulario:

 

A continuación sigue código en Visual Basic:

Para limpiar los controles del Formulario:

    Public Sub LimpiarControles(ByVal frmForm As Form, ByVal tipo As String)
        Dim ctlControl As Object


        For Each ctlControl In frmForm.Controls
            If tipo = "CT" Then
                If ctlControl.GetType Is GetType(System.Windows.Forms.TextBox) Then
                    ctlControl.Text = ""
                End If
            End If
            If tipo = "CO" Then
                If ctlControl.GetType Is GetType(System.Windows.Forms.ComboBox) Then
                    ctlControl.Text = ""
                End If
            End If

            If tipo = "LB" Then
                If ctlControl.GetType Is GetType(System.Windows.Forms.ListBox) Then
                    ctlControl.Items.clear()
                End If
            End If

            If tipo = " LV" Then
                If ctlControl.GetType Is GetType(System.Windows.Forms.ListView) Then
                    ctlControl.Items.clear()
                End If
            End If

          Application.DoEvents()

        Next ctlControl
    End Sub

Para ejecutar este procedimiento tenemos los siguientes eventos implementados:

1. Para las Cajas de texto pasamos el parámetro CT

    Private Sub LimpiarCajas(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles cmdLimpiaCajas.Click
        Me.LimpiarControles(Me.GetContainerControl, "CT")
    End Sub

2. Para las ComboBox pasamos el parámetro CO

     Private Sub cmdLimpiarCombos_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles cmdLimpiarCombos.Click
        Me.LimpiarControles(Me.GetContainerControl, "CO")
    End Sub

3. Para los ListBox pasamos el parámetro LB

    Private Sub LimpiarListas(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles cmdLimpiarListas.Click
        Me.LimpiarControles(Me.GetContainerControl, "LB")
    End Sub

4. Para los ListView pasamos el parámetro LV

    Private Sub LimpiarListViews(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles cmdLimpiarListViews.Click
        Me.LimpiarControles(Me.GetContainerControl, " LV")
    End Sub

 

Para limpiar los controles de un GroupBox se implementa el sigueinte procedimiento

    'Procedimiento para borrar controles en un GroupBox

    Private Sub Limpiar(ByVal Grupo As GroupBox, ByVal tipo As String)
        Dim miControl As Object

        For Each miControl In Grupo.Controls
            If tipo = "CT" Then
                If miControl.GetType Is GetType(System.Windows.Forms.TextBox) Then
                    miControl.Clear()
                End If
            End If

            ''' implementar para otros controles en el GroupBox
            Application.DoEvents()
        Next
    End Sub

y para ejecutarlo se implementa lo siguiente:

    Private Sub LimpiarCajasGrupo(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles cmdLimpiarCajasGrupo.Click
        Limpiar(Me.GroupBox1, "CT")
    End Sub

 

Suerte a todos y A SEGUIR DESARROLLANDO.

El código completo de este pequeño aporte está en el final del artículo, no olviden calificar en PanoramaBox, me alienta a seguir compartiendo con ustedes mis conocimientos.

Ing. Fernando Luque Sánchez
CIP 61806
De Trujillo - Perú para el mundo


Espacios de nombres usados en el código de este artículo:

System.Windows.Forms.Form


Fichero con el código de ejemplo: FernandoLuque_BorrarContenidosII.zip - Tamaño 10 KB


ir al índice