您好,登錄后才能下訂單哦!
1.設置AllowSorting="True"
2.點擊GridView的事件onsorting="GridView1_Sorting"
3.利用GridView的Sort屬性,頁面在ViewState中存儲主鍵和排序,默認是升序,ViewState["OrderDire"] = "ASC";;由于要在分頁事件中實現能再排回來,所以再在分頁事件中添加ViewState["OrderDire"] = "Desc";
全部代碼如下:
public partial class WebForm1 : System.Web.UI.Page
{
string strcon="Data Source=.;Initial Catalog=db_TomeTwo;Integrated Security=True";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ViewState["SortOrder"] = "au_id";
ViewState["OrderDire"] = "ASC";
Bind();
}
}
public void Bind()
{
string strsel="select * from authors";
SqlConnection conn=new SqlConnection (strcon);
SqlCommand com=new SqlCommand (strsel,conn);
SqlDataAdapter sda=new SqlDataAdapter (com);
DataSet ds=new DataSet();
conn.Open();
sda.Fill(ds,"authors");
DataView dw = ds.Tables["authors"].DefaultView;
string strsort = (string)ViewState["SortOrder"] + "," + (string)ViewState["OrderDire"];
//Response.Write(strsort);
dw.Sort = strsort;
//GridView1.DataSource=ds.Tables["authors"];
GridView1.DataSource = dw;
GridView1.DataBind();
conn.Close();
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
Bind();
}
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
string spage = e.SortExpression;
if (ViewState["SortOrder"].ToString() == spage)
{
if (ViewState["OrderDire"].ToString() == "Desc")
{
ViewState["OrderDire"] = "ASC";
}
else
{
ViewState["OrderDire"] = "Desc";
}
}
else
{
ViewState["SortOrder"] = e.SortExpression;
}
Bind();
}
}
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。