Foros del Web » Programación para mayores de 30 ;) » .NET »

Pasar un valor desde un datagrid de una ventana modal

Estas en el tema de Pasar un valor desde un datagrid de una ventana modal en el foro de .NET en Foros del Web. Hola, A ver si me podeis ayudar, es muy urgente y tengo ni idea de como solucionarlo. Abro una ventana modal que tiene un data ...
  #1 (permalink)  
Antiguo 05/04/2005, 04:12
 
Fecha de Ingreso: febrero-2005
Mensajes: 39
Antigüedad: 19 años, 3 meses
Puntos: 0
Pasar un valor desde un datagrid de una ventana modal

Hola,

A ver si me podeis ayudar, es muy urgente y tengo ni idea de como solucionarlo.

Abro una ventana modal que tiene un data grid, cuando selecciono una fila quiero que ese valor sea pasado a la pagina principal. El problema surge por los siguiente. Para poder seleccionar una fila del datagrid en punto net, añado el atributo click al datgrid y provoco un postback. Por otro lado como las ventanas modales no tienen postback tambien los provoco cuando se hace click en el data grid. Claro, el postback del datagrid que conlleva la seleccion se produce antes que el postback provocado al hacer click para pasar el valor por lo que tengo el problema de que al pinchar en el datagrid de la ventana modal se me abre otra ventana con el datagrid y ademas no pasa el valor. Como podría solucionarlo????

Gracias
  #2 (permalink)  
Antiguo 05/04/2005, 04:46
Avatar de Delek  
Fecha de Ingreso: marzo-2005
Ubicación: Madrid
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
Intentalo con el evento Selected_Indexchange en vez de con el click.
Una vez que lo seleccionas, le pasas el attributo del servidor a dicha fila.

Por ejemplo:

Cita:
private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
{
int index = DataGrid1.SelectedIndex;
string dato_campo1 = DataGrid1.Items[index].Cells[1].Text;
string dato_campo2 = DataGrid1.Items[index].Cells[2].Text;
etc...
Session["dato_campo1"] = dato_campo1;
Session["dato_campo2"] = dato_campo2;
etc...
}
Espero que te sirva de ayuda

Delek
  #3 (permalink)  
Antiguo 05/04/2005, 07:28
 
Fecha de Ingreso: febrero-2005
Mensajes: 39
Antigüedad: 19 años, 3 meses
Puntos: 0
En realidad es así como lo estoy haciendo. Utilizo el selected_indexchanged, pero dentro de esa subrutina lo que hago es añadir al datagrid el atributo click y como funcionalidad le paso un postback para que me seleccione la fila. Voy a intentar que hacerlo como me dices. Por otro lado estoy un poco pez en esto del .net.. Si me pudieras explicar que es lo que hace exactamente lo que has puesto de "session["dato_campo1"]=dato_campo1;" te lo agradecería
  #4 (permalink)  
Antiguo 06/04/2005, 04:14
Avatar de Delek  
Fecha de Ingreso: marzo-2005
Ubicación: Madrid
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
Lo que hace es asignar una variable de servidor.

Por ejemplo, te creas la variable x
la asignas como variable de servidor:

Session["x"] = x;

Y luego la puedes recoger desde cualquier página asi:

x = Session["x"];

No te preocupes yo ando igual de pez que tu con el .NET
Esto me lo dijo uno de los gurus que escriben por aqui, Neivan o RootK creo que fue
  #5 (permalink)  
Antiguo 06/04/2005, 04:26
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 19 años, 2 meses
Puntos: 1
guru??? jajaja,estaras de broma,aki el cherif es el rootk
Yo ando aprendiendo como vosotros
Lo que pasa es que di un cursito de .net

Variables de session;

Puedes inicilaizarlas y eliminarlas cdo kieras
Simplemten con session("nombre") = 'valor que kieras almacenar,objeto..lo que sea
Automaticamente sete crea
Tendras definido algun tipo de tiempo de session en el web congfig,mientras este tiempo no se caduque tu mantienes tu session (la session empieza een el session_Star del global_axac) y por lo tanto podras acceder desde cualquier pagina ala variable

Esto es muy utilizado como contador de visitas.....
Para cualquier duda aki andamos
  #6 (permalink)  
Antiguo 14/04/2005, 10:59
 
Fecha de Ingreso: diciembre-2004
Mensajes: 50
Antigüedad: 19 años, 4 meses
Puntos: 0
Para evitar el postback, copia este codigo en el load de la pagina modal, (servidor)

Response.Cache.SetNoServerCaching()
Response.Cache.SetCacheability(System.Web.HttpCach eability.NoCache)
Response.Cache.SetNoStore()
Response.Cache.SetExpires(New DateTime(1900, 1, 1, 0, 0, 0, 0))

si es una pagina asp.net escribe
smartNavigation="True"
luego del registro en la pagina cliente
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:15.