none
VALIDAR SI HAY CHECKBOX MARCADOS EN UN DATAGRIDVIEW VB.NET RRS feed

  • Pregunta

  • Buenas, de antemano gracias por la valiosa ayuda que puedan darme.

    Mi consulta es la siguiente:

    Tengo una columna de tipo checkBox en un datagridview la idea es validar que para que se cometa alguna alccion al menos una casilla debe esta marcada, lo he intentado de varias maneras pero cuando cuando las todas las casillas estan desmarcadas no hay problema porque lo valida bien el problema esta en que cuando hay al menos alguna marca me sigue comparando y realiza la accion pero igual me verifica los check desmarcados cuan al marcar alguna se cual sea la verificacion ya no deberia tener lugar.

    Gracias, de verdad.


    Angel Jesus Gil Macayo

    jueves, 26 de mayo de 2016 20:36

Respuestas

  • Hola Angel Jesus Gil Macayo,

    Puedes usar Linq :

        Private Sub btnValidar_Click(sender As Object, e As EventArgs) Handles btnValidar.Click
    
            Dim seleccionados As Integer = DataGridView1.Rows.Cast(Of DataGridViewRow).
                                                  Where(Function(x) x.Cells("ColumnaCheck").Value = True).
                                                  ToList().
                                                  Count
    
            If seleccionados = 0 Then
                MessageBox.Show("Seleccine por lo menos una casilla.")
                'Salimos
                Exit Sub
            End If
    
            'Hay uno o más seleccionados
            'seguimos...
    
        End Sub

    En la variable seleccionados, se encontrará el total de filas que tengan el checkBox seleccionado (True), ahí ya aplicas la lógica dependiendo su valor.

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    jueves, 26 de mayo de 2016 20:46

Todas las respuestas

  • Hola Angel Jesus Gil Macayo,

    Puedes usar Linq :

        Private Sub btnValidar_Click(sender As Object, e As EventArgs) Handles btnValidar.Click
    
            Dim seleccionados As Integer = DataGridView1.Rows.Cast(Of DataGridViewRow).
                                                  Where(Function(x) x.Cells("ColumnaCheck").Value = True).
                                                  ToList().
                                                  Count
    
            If seleccionados = 0 Then
                MessageBox.Show("Seleccine por lo menos una casilla.")
                'Salimos
                Exit Sub
            End If
    
            'Hay uno o más seleccionados
            'seguimos...
    
        End Sub

    En la variable seleccionados, se encontrará el total de filas que tengan el checkBox seleccionado (True), ahí ya aplicas la lógica dependiendo su valor.

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    jueves, 26 de mayo de 2016 20:46
  • Gracias JC Naupa Crispin me sirvió de maravilla, eres muy amable.

    Angel Jesus Gil Macayo

    jueves, 26 de mayo de 2016 20:56