ASP.NET - Seleccionar Fila ASPxGridView

 
Vista:

Seleccionar Fila ASPxGridView

Publicado por John Ewan (17 intervenciones) el 02/12/2011 09:48:10
Hola a todos, mi duda es la siguiente, tengo un aspxgridview con una serie de datos, en este caso de responsables de una empresa. Dependiendo del que seleccione me salen unas tablas u utras. Al seleccionar el responsable quiero que se me quede marcada la fila con ese responsable en el aspxgridview para tener presente que responsable he seleccionado. ¿Alguna solución?
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

Seleccionar Fila ASPxGridView

Publicado por John Ewan (17 intervenciones) el 02/12/2011 10:00:11
He estado investigando y creo que es con la opción FocusedRowIndex, es muy facil, simplemente la sintaxis es

<nombre del asp>.FocusedRowIndex = <nº de fila empezando en 0>
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

Seleccionar Fila ASPxGridView

Publicado por John Ewan (17 intervenciones) el 02/12/2011 10:37:49
Bueno sigo yo y mis circunstancias, ahora estoy intentando recorrer esa tabla para guardar el numero de fila en el que esta el dato en concreto que busco, por ahora he programado esto


int filaseleccionada = this.QueFila(ASPxGridView1, Session["responsableSeleccionado"].ToString());
ASPxGridView1.FocusedRowIndex = filaseleccionada;


protected int QueFila(ASPxGridView tabla,string clave)
{
int i = 0;
bool encontrado = false;
int seleccion;
DataRow foco;
DataTable tablasel;
while (i < tabla.VisibleRowCount && !encontrado)
{
tabla.FocusedRowIndex = i;
seleccion = Convert.ToInt32(tabla.FocusedRowIndex.ToString());
foco = tabla.GetDataRow(seleccion);
tablasel = foco.Table;

if (tablasel.Rows[i].Field<string>("resp_nif") == clave)
encontrado = true;
i++;
}

return i;
}

Lo he sacado de una función que ya había antes, ¿alguna sugerencia?
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

Seleccionar Fila ASPxGridView

Publicado por John Ewan (17 intervenciones) el 02/12/2011 12:37:59
Bueno ya lo he solucionadop por completo, al parecer, las paginas que se cargan en asp tiene un ciclo de vida, lo podeis ver en este enlace
http://msdn.microsoft.com/es-es/library/ms178472%28VS.80%29.aspx
Así que al clickear en el boton para seleccionar a mi responsable me cargaba la pagina antes y después de pulsar, y claro siempre cargaba el mismo responsable.

Colocando este filtro en la funcion page_load obligas a que solo se ejecuta la primera vez.

if (!IsPostBack)

Gracias y hasta otra.
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