none
el indice estaba fuera del intervalo. debe ser un valor no negativo o inferior al tamaño de la coleccion RRS feed

  • Pregunta

  • Hola al cargarse mi gridview, si selecciono todo el renglón no me marca ningún error, pero si intento seleccionar una sola celda me marca ese error, me marca el error siempre en la parte subrayada, e agregue la variable "a" para que me contara los renglones y al momento de debug me marca 7 pero no se cual sea el problema o que deba de hacer, GRACIAS POR SU AYUDA

           

    Private Sub datalistado_CellClick(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles datalistado.CellClick

    Dim a = datalistado.Rows.Count()

            txtidcliente.Text = datalistado.SelectedCells.Item(1).Value
            txtnombre.Text = datalistado.SelectedCells.Item(2).Value
            txtapellidos.Text = datalistado.SelectedCells.Item(3).Value
            txtdireccion.Text = datalistado.SelectedCells.Item(4).Value
            txttelefono.Text = datalistado.SelectedCells.Item(5).Value
            txtdni.Text = datalistado.SelectedCells.Item(6).Value

            btneditar.Visible = True
            btnguardar.Visible = False


        End Sub

    martes, 26 de noviembre de 2013 18:23

Respuestas

  • que pasa si usas

    Private Sub datalistado_CellClick(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles datalistado.CellClick
    
    	If datalistado.CurrentRow Is Nothing Then
    		Return
    	End If
    
    	Dim row As DataGridViewRow = datalistado.CurrentRow
    	
    	txtidcliente.Text = row.Cells(1).Value
    	txtnombre.Text = row.Cell(2).Value
    	txtapellidos.Text = row.Cell(3).Value
    	txtdireccion.Text = row.Cell(4).Value
    	txttelefono.Text = row.Cell(5).Value
    	txtdni.Text = row.Cell(6).Value
    
    	btneditar.Visible = True
    	btnguardar.Visible = False
    
    
    End Sub

    trabaj con la row seleccionada

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina


    • Editado Leandro TuttiniMVP martes, 26 de noviembre de 2013 22:07
    • Marcado como respuesta Omar Ortiz miércoles, 27 de noviembre de 2013 19:38
    martes, 26 de noviembre de 2013 22:07

Todas las respuestas

  • Debe ser porque tenes seleccionada una sola celda, de todas maneras no entiendo muy bien qué es lo que querés hacer.

    datalistado.SelectedCells.Item(1).Value

    Lo que le estas diciendo ahí es que seleccionaste un grupo de celdas y querés obtener el valor de la segunda (la primera sería .Item(0)) y al tener una sola celda seleccionada te va a dar ese error.

    Imagino que lo que querés hacer es seleccionar un registro en la grilla y mostrarlo en cajas de texto, si es esto entonces probá este código:

    txtidcliente.Text = datalistado.CurrentRow.Cells(0).Value
    txtnombre.Text = datalistado.CurrentRow.Cells(1).Value
    txtapellidos.Text = datalistado.CurrentRow.Cells(2).Value
    txtdireccion.Text = datalistado.CurrentRow.Cells(3).Value
    txttelefono.Text = datalistado.CurrentRow.Cells(4).Value
    txtdni.Text = datalistado.CurrentRow.Cells(5).Value

    Si esto no es lo que buscabas, intenta aportar un poco más de información.

    Saludos.

    martes, 26 de noviembre de 2013 20:05
  • que pasa si usas

    Private Sub datalistado_CellClick(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles datalistado.CellClick
    
    	If datalistado.CurrentRow Is Nothing Then
    		Return
    	End If
    
    	Dim row As DataGridViewRow = datalistado.CurrentRow
    	
    	txtidcliente.Text = row.Cells(1).Value
    	txtnombre.Text = row.Cell(2).Value
    	txtapellidos.Text = row.Cell(3).Value
    	txtdireccion.Text = row.Cell(4).Value
    	txttelefono.Text = row.Cell(5).Value
    	txtdni.Text = row.Cell(6).Value
    
    	btneditar.Visible = True
    	btnguardar.Visible = False
    
    
    End Sub

    trabaj con la row seleccionada

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina


    • Editado Leandro TuttiniMVP martes, 26 de noviembre de 2013 22:07
    • Marcado como respuesta Omar Ortiz miércoles, 27 de noviembre de 2013 19:38
    martes, 26 de noviembre de 2013 22:07
  • Muchas gracias si funciono, muchas gracias por tu respuesta
    lunes, 2 de diciembre de 2013 22:54