• 主页
  • ASP
  • .NET Framework
  • Web Services
  • VB
  • VC
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • LINQ

datagrid分页排序问题

zhangqiushui 2004-12-25 09:26:35
我用datagrid来显示数据库中的数据,既可以点击列标题来排序,又可以分页(通过点击下一页,上一页)现在的问题是,当我在某页单击列标题排序后,点击下一页时的datagrid中的数据没有排序了。
//分页代码
private void datResult_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{



DataTable dt=(DataTable)Session["SortTable"];

DataView dv=new DataView(dt);
datResult.DataSource=dv;
datResult.CurrentPageIndex=e.NewPageIndex;
datResult.DataBind();
}
//排序代码
private void datResult_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
DataTable dt=(DataTable)Session["SortTable"];
DataView dv=new DataView(dt);
dv.Sort=e.SortExpression;
datResult.CurrentPageIndex=0;
datResult.DataSource=dv;

datResult.DataBind();
}
...全文
125 点赞 收藏 2
写回复
2 条回复
xiaojunrouton 2004年12月26日
private string SortDirection
{
get
{
if(ViewState["SortDirection"] == null)
return "";
return ViewState["SortDirection"] as string;
}
set
{
ViewState["SortDirection"] = value;
}

}


//分页代码
private void datResult_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{



DataTable dt=(DataTable)Session["SortTable"];

DataView dv=new DataView(dt);
dv.sort = "";
dv.sort = SortDirection;
datResult.DataSource=dv;
datResult.CurrentPageIndex=e.NewPageIndex;
datResult.DataBind();
}
//排序代码
private void datResult_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
DataTable dt=(DataTable)Session["SortTable"];
DataView dv=new DataView(dt);
dv.Sort=e.SortExpression;
datResult.CurrentPageIndex=0;
datResult.DataSource=dv;

datResult.DataBind();
}
回复 点赞
噯卟釋手 2004年12月25日
这方面的代码太多了吧 搜搜看 感觉许多都是用存储过程来实现滴
回复 点赞
发动态
发帖子
.NET技术社区
创建于2007-09-28

4.9w+

社区成员

66.8w+

社区内容

.NET技术交流专区
社区公告
暂无公告