Punteros a registros

03/05/2005 - 04:21 por Damian Galletini | Informe spam
Buenas, mi duda es la siguiente, cuando conecto una tabla de un DataSet a un
DataGrid y muevo el puntero de la fila en el DataGrid, en el DataSet
¿tambien se mueve como pasaba en VB6 con lso recordsets?, ahora lo que venia
haciendo es que la ultima columna del DataGrid contenia el ID de la tabla y
la ocultaba entonces lo recuperaba de ahi, pero es muy poco "elegante" a
nivel de codigo hacer eso, por eso queria saber si hay alguna manera de
recuperar el valor de un campo determinado de la fila actual del DataSet (en
caso de que esta se vaya moviendo conjuntamente con el DataGrid).
EJ: Valor = DataSet.Tables("UnaTabla").Row(quiero que se la misma del data
grid)("ID")
 

Leer las respuestas

#1 Carlos Durán Urenda
09/05/2005 - 16:45 | Informe spam
Hola Damian

En Realidad el DataGrid trabaja sobre el DefaultView de tu DataTable, ten en
cuenta que el DataTable no tiene la propiedad Sort, de forma que el orden
del DataGrid no será el mismo que el del DataTable, debido a que en el grid
puedes ordenar y filtrar, etc.

pero puedes obtener una referencia un DataRow especifico...


Dim DRV as DataRowView =
TuDataTable.DefaultView(TuDataGrid.CurrentRowIndex)

En este caso el DataRowView actua como "un puntero" a la version actual de
la fila de tu DataTable, correspondiente a la fila seleccionada en tu
DataGrid, podras leer los datos y modificarlos, afectando el Datatable


espero te sirva

Saludos
Carlos Durán




"Damian Galletini" escribió en el mensaje
news:
Buenas, mi duda es la siguiente, cuando conecto una tabla de un DataSet a
un DataGrid y muevo el puntero de la fila en el DataGrid, en el DataSet
¿tambien se mueve como pasaba en VB6 con lso recordsets?, ahora lo que
venia haciendo es que la ultima columna del DataGrid contenia el ID de la
tabla y la ocultaba entonces lo recuperaba de ahi, pero es muy poco
"elegante" a nivel de codigo hacer eso, por eso queria saber si hay alguna
manera de recuperar el valor de un campo determinado de la fila actual del
DataSet (en caso de que esta se vaya moviendo conjuntamente con el
DataGrid).
EJ: Valor = DataSet.Tables("UnaTabla").Row(quiero que se la misma del
data grid)("ID")

Preguntas similares