J'ai un GridView qui obtient sa source de données à partir d'un objet complexe. Donc, je fais le tri & de pagination dans le code derrière.Gridview SortExpression avec 2 champs
<asp:GridView ID="SystemsDetailList" runat="server" AllowSorting="true" AllowPaging="true"
AutoGenerateColumns="False" ShowFooter="True" OnPageIndexChanging="gridView_PageIndexChanging" OnSorting="gridView_Sorting">
Pour une importante colonne de titre que j'ai un SortExpression avec 2 champs:
SortExpression="FunctionalAreaDisplayCode, EswbsDisplayCode"
Ce dans le code derrière:
protected void gridView_Sorting(object sender, GridViewSortEventArgs e)
{
BindSystemList(e.SortExpression, sortOrder);
}
public string sortOrder
{
get
{
if (ViewState["sortOrder"].ToString() == "desc")
ViewState["sortOrder"] = "asc";
else
ViewState["sortOrder"] = "desc";
return ViewState["sortOrder"].ToString();
}
set
{
ViewState["sortOrder"] = value;
}
}
Pour une raison quelconque, il gardera "FunctionalAreaDisplayCode" toujours trié ASC mais le EswbsDisplayCode fonctionne bien car il bascule entre ASC et DESC correctement.
et des conseils ici?
merci!
Je ne comprends pas votre question. Voulez-vous dire qu'il devrait basculer entre (FunctionalAreaDisplayCode asc, EswbsDisplayCode asc) et (FunctionalAreaDisplayCode desc, EswbsDisplayCode desc) – Homer