Merci,
J'ai donc explorer cette voie.
Malheureusement, cela ne marche pas tout a fait puisque j'ai ce message d'erreur !
La source de données 'ODS_FICHE' ne prend pas en charge le tri de données IEnumerable. Le tri automatique n'est pris en charge qu'avec DataView, DataTable et DataSet.
Mon Objet data source ce sert d'une classe AccesDonneFiche qui me retourne une List<FicheClass>. Je pense que le problème est la mais je vois pas trop comment le résoudre ?!
Sinon j'ai ce code trouvé sur le net que j'ai adapté vu que j'ai un ObjectDataSource.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ViewState["sortOrder"] = "";
bindGridView("", "");
}
}
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
bindGridView(e.SortExpression, sortOrder);
}
public void bindGridView(string sortExp, string sortDir)
{
if (sortExp != string.Empty)
{
// Passage de parametre de la valeur order by "idfiche" "DESC"
ODS_FICHE.SelectParameters[7].DefaultValue = sortExp;
ODS_FICHE.SelectParameters[8].DefaultValue = sortDir;
}
}
public string sortOrder
{
get
{
{
if (ViewState["sortOrder"].ToString() == "desc")
{
ViewState["sortOrder"] = "asc";
}
else
{
ViewState["sortOrder"] = "desc";
}
}
return ViewState["sortOrder"].ToString();
}
set
{
ViewState["sortOrder"] = value;
}
} |
Partager