ASP.NET - datagrid

 
Vista:

datagrid

Publicado por ludwing (6 intervenciones) el 01/02/2007 15:56:53
Tengo un data gris que se conecta a una tabla de una base de datos mediante un data adapter, pero necesito que al dar click en uno de los registros se me muestre el detalle de este que se encuentra almacenado en otra tabla de la base de datos .

cualquier ayuda o idea desde ya se los agradesco
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:datagrid

Publicado por isa (17 intervenciones) el 01/02/2007 17:23:03
Lo que se me ocurre, es que al pinchar, lances una consulta, q ataque esa tabla de base de datos y te muestre esa informaicón o bien en un listado o bien en otra pantalla.

Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:datagrid

Publicado por cdc (6 intervenciones) el 01/02/2007 21:45:06
Hola

Isa, creo que lo que busca Ludwing, es que al "pinchar" sobre una columna, se despliegue "su contenido" en otra pagina. El "tema" es como pasarle a esa otra pagina el(los) parametros para que una consulta sql levante los datos de la DB y los muestre. En ASP comun, era sencillo, porque postebas con el ? y en la nueva pagina recuperabas con el request.querystring, pero en ASP.Net no se como se haria (supongo que algo parecido). COmento esto, porque tengo el mismo pb y aun no lo he resuelto. Como alternativa a lo de Ludwing, es que la pagina origen, tenga otra grilla oculta, y que al clikear sobre el dato deseado, se cargue (sin hacer paso de parametros entre paginas), esa nueva grilla con la consulta sql, cuando no se necesita mas, se oculta. Igualmente Yo estoy buscando la alternativa de pasar parametros, si alguno sabe como, les agradeceria.

Gracias
Cdc
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:datagrid

Publicado por x (445 intervenciones) el 01/02/2007 22:02:14
mmm... no se si les he entendido bien, creo que en el evento click (javascript) de las filas puedes llamar un "pop up" y mandarle como parametro el id del registro, y asi en la ventana modal nueva mostrar todos los detalles del registro, si es que eso es a lo que se refieren, creo que les puedo ayudar en algo, saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:datagrid

Publicado por ludwing (6 intervenciones) el 02/02/2007 17:44:36
si, eso es lo que necesito ¿me puedes ayudar?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:datagrid

Publicado por x (445 intervenciones) el 02/02/2007 19:00:56
mmm a ver si con esto la hacemos...

1) Capturamos el evento onclick de las filas...

window.onload = function()
{
var DataGrid1 = document.getElementById("DataGrid1");

// Iniciamos en uno ya que, en teoria, solo tenemos el header y los items.
for (i = 1; i < DataGrid1.children[0].children.length; i++)
{
DataGrid1.children[0].children[i].onclick = itemOnClick;
}
}

2) En el evento abrimos el pop up...

function itemOnClick()
{
// Suponiendo que en la primera celda del DataGrid tienes el ID del registro.
var Id = this.children[0].innerText;
window.showModalDialog("TU_PAGINA?id=" + ID,'','dialogWidth:300px;dialogHeight:220px;status:no;dialogHide:true;help:no;scroll:no');
}

3) En la seccion <header> de tu pagina que utilizaras como popup necesitas <base target="_selft">, y el id de tu registro lo tomas con Request.QueryString["ID"], y el ancho y alto de la ventana lo adaptas a tus necesidades.

Espero te sirva de algo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:datagrid

Publicado por cdc (6 intervenciones) el 19/02/2007 18:32:46
Hola,

la nota es vieja, pero recien me reintegro de unas vacaciones.
Al final resolvi el tema de Ludwing (que too era mi problema). No lo hice como indico X, porque me complico con Javascript y cosas del lado del cliente. Comento lo que hice, por si a alguien le sirve . Lo resolvi desde el webform, de la
siguiente forma : tengo un dataGrid con 4 columnas, Comprobante, Fecha, Tipo e Importe, la primer columna la defini en el Generador de Propiedades del Visual studio, como Hyperlynk y le puse lo siguiente :

Direccion Url : detalles.aspx (que es la pagina que mostrara el detalle del comprobante en cuestion)
Campo de Direccion Url : el nombre del campo que estoy mostrando y que sera el argumento para detalles.aspx
Cadena de formato de direccion Url : verdetalles.aspx?comprobante={0}

Estas 3 variables, son campos que se encuentran en Generador de Propiedades/Columnas.

Luego en la pagina veodetalles.aspx, pones
NroComprobante = Server.HtmlDecode(Request.QueryString("comprobante"))

y con NroComprobante recuperas el detalle de tu tabla.

Con esto solucione el problema de pasar parametros a otra pagina , desde una grilla.
Espero les sirva.

Salu2
Cdc
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar