我有一个我希望可排序的gridview。当我把它定义是这样的:手动对齐时使GridView排序数据源
<asp:GridView ID="GridView1" runat="server" CssClass="gridview" DataSourceID="GridDataSource" AutoGenerateColumns="False" AllowSorting="True" >
的分拣工作得很好。即。当我点击列标题时,网格按该列排序。
但是,当我把它定义是这样的:
<asp:GridView ID="GridView1" runat="server" CssClass="gridview" AutoGenerateColumns="False" AllowSorting="True" >
和代码隐藏:
GridView1.DataSource = GridDataSource;
GridView1.DataBind();
采用后一种方法排序不起作用。列标题是链接,但网格不自己排序。
我在页面加载后设置数据源,因此用户可以从一些过滤器(下拉列表)中选择来限制返回的记录。
有人能告诉我如何在代码隐藏中设置数据源并获得排序功能吗?另外一个好方法可以阻止网格在初始页面加载时进行数据绑定。
你可能会在[这个SO帖子]中找到你的答案(http://stackoverflow.com/questions/5388245/gridview-sorting-works-once-only) – Michael 2014-10-10 12:22:54