Ordenacion en un DataGrid

08/12/2004 - 22:13 por griss | Informe spam
Hola !

Estoy peleandome con un datagrid, el cual quiero ordenar
por medio de unas de sus columnas, en el lado del cliente
tengo el siguiente codigo:

cliente:

<asp:BoundColumn DataField="modalidad"
HeaderText="Modalidad" SortExpression="Modalidad">

donde ya estableci la propiedad AllowSorting = true;

Ahora en el servidor tengo lo siguiente:

private void grid_SortCommand(object source,
System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
tabla2 = (DataTable)Odatagrid.Consultar ();
DataView dv = new DataView (tabla2);
dv.Sort = e.SortExpression;
grid.DataSource = dv;
grid.DataBind();
}

ok cuando le doy click en la Modalidad se ordena por
orden alfabetico mi columna pero al utilizar la
paginacion la ordenacion se pierde.

que mas tengo que hacer para que esto funcione?
les agradeceria mucho si me orientaran un poco.

grisss
saludos!
 

Leer las respuestas

#1 A.Poblacion
09/12/2004 - 07:37 | Informe spam
Probablemente para hacer la paginación habrás metido en el evento
PageIndexChanged un trozo de coódigo que vuelve a leer la tabla y a hacer un
databind. En ese código tendrás que intercalar un Dataview y ponerle el
"Sort" igual que has hecho en el evento SortCommand.


"griss" wrote in message
news:061d01c4dd6a$b57ff3f0$
Estoy peleandome con un datagrid, el cual quiero ordenar
por medio de unas de sus columnas, en el lado del cliente
tengo el siguiente codigo:

cliente:

<asp:BoundColumn DataField="modalidad"
HeaderText="Modalidad" SortExpression="Modalidad">

donde ya estableci la propiedad AllowSorting = true;

Ahora en el servidor tengo lo siguiente:

private void grid_SortCommand(object source,
System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
tabla2 = (DataTable)Odatagrid.Consultar ();
DataView dv = new DataView (tabla2);
dv.Sort = e.SortExpression;
grid.DataSource = dv;
grid.DataBind();
}

ok cuando le doy click en la Modalidad se ordena por
orden alfabetico mi columna pero al utilizar la
paginacion la ordenacion se pierde.

que mas tengo que hacer para que esto funcione?
les agradeceria mucho si me orientaran un poco.

grisss
saludos!

Preguntas similares