[英]Sorting works only once
我有GridView与排序,它工作得很好,但它只工作一次,是的,这不是重复我发现了很多问题,但它并没有帮助我。 请问它只排序一次是错的(就像方向不变)?
ViewState["sort"] = "ASC" --> is declared in PageLoad
protected void grid_sort(object sender, GridViewSortEventArgs e)
{
DataView sorting = new DataView(data); //data is global DataTable
if (ViewState["sort"].ToString() == "ASC")
ViewState["sort"] = "DESC";
else
ViewState["sort"] = "ASC";
sorting.Sort = e.SortExpression + " " + ViewState["sort"];
data = sorting.ToTable();
GridView1.DataSource = data;
GridView1.DataBind();
}
所有对象都放置在页面生命周期的末尾,因此当它呈现为HTML并发送到客户端时。 因此,您不能使用字段string direction = "ASC"
来存储排序方向。 这将在每次回发时初始化为"ASC"
。
相反,你必须使用不同的方式,例如:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.