Oggi vi illustro un metodo semplice e veloce per aggiungere un’ordinamento per le colonne del vostro GridView in Asp.NET.
Il codice che vi propongo è scritto in C#.

Per prima cosa aggiungiamo la proprietà per il Sorting del GridView nella pagina “MyPage.aspx”:

<asp:GridView ID="MyGridView"  runat="server" AllowSorting="true" OnSorting="inviiSupervisore_Sorting">

E ora passiamo al codice da inserire nella nostra pagina “MyPage.cs”:

protected void MyGridView_Sorting(object sender, GridViewSortEventArgs e)
        {

            DataTable dataTable = Invio.GetData();

            if (dataTable != null)
            {
                DataView dataView = new DataView(dataTable);
                Session["order"] = e.SortExpression + " " + GetSortDirection(e.SortExpression.ToString());
                dataView.Sort = Session["order"].ToString();

                MyGridView.DataSource = dataView;
                MyGridView.DataBind();
            }
        }

protected string GetSortDirection(string column)
{
       string nextDir = "ASC"; // Default next sort expression behaviour.
       if (ViewState["sort"] != null && ViewState["sort"].ToString() == column)
       {  
          nextDir = "DESC";
          ViewState["sort"] = null;
       }
       else
       {   
          ViewState["sort"] = column;
       }
       return nextDir;
}

Ecco fatto, ora il Sorting per le colonne del nostro GridView è completo.

Leave a Reply

Your email address will not be published.