DataGrid

Gracias por leer el mensaje. Tengo este problema. Tengo un formulario con un datagrid que toma los datos de una BD. Entre los datos se encuentra uno llamado ID. Cuando hago click en la grilla tomo el valor del campo ID y lo uso para otra cosa. La pregunta es la siguiente: Se puede ocultar la columna ID y a su vez hacer click en el datagrid y que me traiga el valor que este en ese momento en el campo ID.
¿Fui claro?
Muchas gracias

1 respuesta

Respuesta
1
Perdona, no me he dado cuenta, pensé que era un formulario web. Para Windows tienes que usar ColumnMapping en la fuente de datos:
//ds es el datasource donde tienes los datos
//Ocultas el campo del datasource que desees.
ds.Tables("MiTabla").Columns("Id").ColumnMapping = MappingType.Hidden
//asocias el datasource al datagrid
DataGrid1. SetDataBinding(ds, "MiTabla")
Gracias por la respuesta, pero sabes que yo me estoy refiriendo a un proyecto Windows Forms.
Saludos
Creo que te refieres a esto:
Si lo que deseas es un enlace en el cuál se pase el id, no es necesario que esta columna se visualice o se guarde como no visible, te basta con utilizarla en un enlace::
Suponiendo que tu consulta a BBDD te devuelva dos campos, uno con el id y otro con la descripción del elemento, deberías agregar una columna con hipervínculo de la siguiente forma:
<Columns>
<asp:HyperLinkColumn
HeaderText="Detalles"
DataNavigateUrlField="Id"
DataNavigateUrlFormatString="detailspage.aspx?id={0}"
DataTextField="Descripcion"
Target="_new"
/>
...
</Columns>
Si lo que deseas es acceder al contenido de la columna id desde el servidor realizando un postback, debes establecer la columna del id con propiedad visible a false y acceder a la columna de la misma forma que lo estés haciendo ahora.
Te entendí eso, pero yo necesito tener el valor del ID(oculto) dado que actualmente en la grilla veo el id y cuando hago click en la fila me selecciona el id de esa fila, pero lo que yo quiero es que no se vea la columna ID sino que este oculta. No se si soy claro.
Ahora si que esto perdido. El ejemplo que te he puesto oculta la columna en el datagrid, pero puedes seguir accediendo al valor de esa columna, ya que está en el Datasource. ¿No es eso lo que quieres hacer?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas