Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07/06/2011, 22:58
LOD_Fredy
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Paginar un datagridview de forma inusual

Encontre una solucion que no se si cause problemas a largo plazo:

Usando el evento keyup del datagridview checo si el renglon seleccionado es el ultimo, de ser asi, realiza el while que mete los siguientes registros (actualmente es de 2 en 2 por falta de registros).

Este es el codigo:

If e.KeyValue = 40 Then
'DGArticulo.CurrentRow.Selected = True
If DGArticulo.CurrentRow.Index = DGArticulo.Rows.Count - 1 And DGArticulo.Rows.Count Mod 2 = 0 Then

_oArticulo = New Clase_Articulos
_oArticulo.Opc = 17
Dim datosarticulo As String()[/HTML]
ReDim datosarticulo(0)
datosarticulo(0) = DGArticulo.Item(0, DGArticulo.CurrentRow.Index).Value
_oArticulo.DatosArticulo = datosarticulo
Dim _oElem As Elemento
_oElem = _oArticulo
Dim Consulta As Visitor = New VisitanteConsulta()
_oElem.Accept(Consulta)
Lector = _oArticulo.Lector

While Lector.Read()

DGArticulo.Rows.Add(Lector("ar_id").ToString(), Lector("ar_codigoarticulo").ToString(), Lector("ar_nombre").ToString(), Lector("ar_descripcion").ToString())

'DGArticulo(0, i).Value = Lector("ar_id").ToString()
'DGArticulo(1, i).Value = Lector("ar_codigoarticulo").ToString()
'DGArticulo(2, i).Value = Lector("ar_nombre").ToString()
'DGArticulo(3, i).Value = Lector("ar_descripcion").ToString()

'ar_id.Items.Add(Lector("ar_id").ToString())

End While
Else

End If
End If

Solo tomen en cuenta la parte donde agrega los renglones.

Ahora encontre otro inconveniente y es al agregar un nuevo registro desde el programa. Debido a que al comienzo muestro los 2 primeros registros, si se crea un nuevo registro desde el programa se agrega el renglon correspondiente y por lo tanto ya no funciona el codigo del keypress. Estoy buscando una solucion a esto, si alguien tiene alguna idea me la dice, gracias.