Gridview de tri lors de la liaison de données à partir du fichier code-behind

Je suis en utilisant asp.net web-la forme et le gridview sur plusieurs pages pour afficher les données. - Je lier gridview à partir du fichier code-behind.

Jusqu'à présent, je suis en mesure d'utiliser code suivant pour lier la source de données à gridview et également activer la pagination, mais j'ai un face à problème pour activer le tri sur la même grille. N'importe quel point ou de l'aide sur la façon d'activer la pagination de la faire fonctionner avec le code ci-dessous.

J'ai aussi plus de domaines qui ne font pas partie de ce code que j'utilise pour des fonctionnalités supplémentaires
onrowdatabound="GridView1_RowDataBound" onrowcommand="GridView1_RowCommand"

.Fichier ASPX

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False" DataKeyNames="ID" 
Width="990px" BackColor="White" BorderColor="WhiteSmoke" BorderStyle="None" BorderWidth="0px" CellPadding="5" 
Font-Names="Verdana" Font-Size="X-Small" ForeColor="Black" GridLines="Horizontal" PageSize="10" CssClass="myheader"  AllowSorting="true" 
onrowdatabound="GridView1_RowDataBound"  onrowcommand="GridView1_RowCommand" onpageindexchanging="GridView1_PageIndexChanging" >
<Columns>
<asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID" />
<asp:BoundField DataField="FirstName" HeaderText="First Name" SortExpression="FirstName" />
<asp:BoundField DataField="LastName" HeaderText="Last Name" SortExpression="LastName" />
<asp:BoundField DataField="Date" HeaderText="Date" SortExpression="Date"  DataFormatString="{0:yyyy/MM/dd}"/>
</Columns>
<FooterStyle BackColor="#CCCC99" ForeColor="Black" />
<HeaderStyle  Height="32px" Font-Bold="True" ForeColor="White" HorizontalAlign="Left" BorderStyle="None" />
<PagerStyle BackColor="White" ForeColor="Black" HorizontalAlign="Right" />
<SortedAscendingCellStyle BackColor="#F7F7F7" />
<SortedAscendingHeaderStyle BackColor="#4B4B4B" />
<SortedDescendingCellStyle BackColor="#E5E5E5" />
<SortedDescendingHeaderStyle BackColor="#242121" />
<RowStyle   BorderColor="#f5f5f5" BorderStyle="Notset"/>
</asp:GridView>

CODE DERRIÈRE

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GetDetails();
}
}   
protected void GetDetails()
{
string strSql = "SELECT * FROM Test_Table Order by Date Desc ";
DataSet ds = DataProvider.Connect_Select(strSql);
GridView1.DataSource = ds;
GridView1.DataBind();
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GetDetails();
}

Mise à JOUR: Code mis à jour pour

.ASPX

OnSorting="GridView1_OnSorting"

CODE DERRIÈRE

    protected void GridView1_OnSorting(object sender, GridViewSortEventArgs e)
{
string strSql = "SELECT * FROM Test_Table ";
DataSet ds = DataProvider.Connect_Select(strSql);
DataTable dataTable = ds.Tables[0];
DataTable dataTable = ds.Tables[0];
if (dataTable != null)
{
DataView dataView = new DataView(dataTable);
dataView.Sort = e.SortExpression + " "+e.SortDirection;
GridView1.DataSource = dataView;
GridView1.DataBind();
}
}
  • <PagerSettings PageButtonCount="8"></PagerSettings>
InformationsquelleAutor Learning | 2014-02-04