none
Validar Campos Vacíos Datagridview RRS feed

  • Pregunta

  • Hola, Quisiera pedirles de fabor  que me apoyaran con validar campos vacíos de un Grid                                 El Grid se le muestra al usuario y este debe llenarlo con datos pero quisiera saber como recorrer todas las celdas y  mostrar el ErrorText donde la celda se encuentre vacía ya que todos los campos deben ser llenados,estoy trabajando con windows forms c#

    Gracias de antemano.


    jaimesequen


    martes, 8 de enero de 2019 23:06

Todas las respuestas

  • Puedes validar el valor que se vaya introduciendo en cada celda usando el evento CellValidating:

    Private Sub grid_CellValidating(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellValidatingEventArgs) 

    If String.IsNullOrEmpty(e.FormattedValue.ToString()) Then
       MsgBox("La celda no puede estar vacía.", MsgBoxStyle.Information)
       e.Cancel = True
    End If

    End Sub

    Y también puedes realizar una validación de todas las celdas:

    For Each fila As DataGridViewRow In DataGridView1.Rows

            ' Recorro las celdas de cada fila
            For Each celda As DataGridViewCell In fila.Cells
                If (Convert.ToString(celda.Value).Trim() = String.Empty) Then
                   MsgBox("La celda no puede estar vacía.", MsgBoxStyle.Information)
                End If
            Next celda

    Next fila


    Saludos, Javier J

    miércoles, 9 de enero de 2019 7:45
  • Hola Javier

    Agradezco tu ayuda me funciono muy bien te lo agradezco                                                                                     Abusando de tu amabilidad,tengo el inconveniente de como capturar cada celda dentro del foreach para que cuando la celda este vacía se muestre el ErrorText dentro la celda. si me pudieras ayudar te lo agradecería.                            


    jaimesequen

    miércoles, 9 de enero de 2019 15:33
  • Puedes posicionarte en la celda que esté vacía:

    For Each fila As DataGridViewRow In DataGridView1.Rows

        ' Recorro las celdas de cada fila
        For Each celda As DataGridViewCell In fila.Cells
            If (Convert.ToString(celda.Value).Trim() = String.Empty) Then
                MsgBox("La celda no puede estar vacía.", MsgBoxStyle.Information)
                DataGridView1.CurrentCell = celda
                Exit Sub
            End If
        Next celda

    Next fila


    Saludos, Javier J

    miércoles, 9 de enero de 2019 16:15