当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: 偶近段时间来做个三层系统玩玩,用d6,可有个问题总觉得特别扭,所以和各路英雄交流一下,看看大家是怎么做的。 我的结构是前端:用delhi开发的application或browse,中间com+,也用delphi开发com+ component,后面sql2000。用midas在com+ component之间及client和中间件之间传递数据。 基于中间件的三层结构设计思想上是要把业务逻辑......
 ·问个小问题,关于tblobfield    »显示摘要«
    摘要: blobfield是做什么用的,我看了帮助,没怎么懂,请指教! ......


在我的.cs文件中定义 string SortExpression;用来记住我的排序key可是我点翻页这个怎么就变null了

在我的aspx.cs文件中定义string   SortExpression;用来记住我的排序key可是我点翻页这个怎么就变null了?  
  string   SortExpression;  
  ICollection   CreateDataSource()    
  {  
                    sqlDataAdapter1.Fill(dataSet11);  
                    dataView1.Sort=SortExpression;  
  return   dataView1;  
  }  
   
  private   void   Page_Load(object   sender,   System.EventArgs   e)  
  {  
  if   (SortExpression   ==   "")  
  SortExpression   =   "UserCode";              
  if   (!Page.IsPostBack)  
  {  
  DataGrid1.DataSource   =   CreateDataSource();  
  DataGrid1.CurrentPageIndex   =   0;  
  DataGrid1.DataBind();  
  }  
  }  
  private   void   DataGrid1_PageIndexChanged(object   source,   System.Web.UI.WebControls.DataGridPageChangedEventArgs   e)  
  {  
  DataGrid1.DataSource   =   CreateDataSource();  
  DataGrid1.CurrentPageIndex   =   e.NewPageIndex;  
  DataGrid1.DataBind();  
  }  
   
  private   void   DataGrid1_SortCommand(object   source,   System.Web.UI.WebControls.DataGridSortCommandEventArgs   e)  
  {  
  SortExpression   =   e.SortExpression.ToString();  
  DataGrid1.DataSource   =   CreateDataSource();  
  DataGrid1.CurrentPageIndex   =   0;  
  DataGrid1.DataBind();  
  }  
 

NO.1   作者: mbm

你运气真好,刚编了一段这样的代码。  
  不懂再问  
  private   void   DataGrid1_SortCommand(object   source,   System.Web.UI.WebControls.DataGridSortCommandEventArgs   e)  
  {  
  DataView   myview=((DataSet)ViewState["ds"]).Tables[0].DefaultView;  
  myview.Sort=e.SortExpression;  
   
  ViewState["sort"]=e.SortExpression;  
  DataGrid1.DataSource=myview;  
  DataGrid1.DataBind();  
  }  
   
   
  private   void   BindGrid()  
  {  
  string   sql="select   cLicense,cType,cOwner   from   t_CarRegister";  
  DataSet   ds=publicClass.DataBase.ReturnDataSet(sql);  
  ViewState["ds"]=ds;  
  DataView   myview=ds.Tables[0].DefaultView;  
  if   (ViewState["sort"]!=null)  
  {  
  myview.Sort=(string)ViewState["sort"];  
  }  
  DataGrid1.DataSource=myview;  
  DataGrid1.DataBind();            
  }

NO.2   作者: nohbday

翻页事件会导致页面里的变量类型重新定义  
  所以翻页后你的string类型的变量SortExpression会变成null  
  如果你不想改动你的程序可以使用viewstate类型  
  即将变量SortExpression换成ViewState["SortExpression"]  
  ViewState的使用类似于Session的使用

NO.3   作者: icefireren

当你翻页时,页面又向服务端递交了一次,你的变量均恢复成默认值,所以只能采取些特殊方法保存值,ViewState是不错的方法,相当于页面上的隐藏字段,具体方法上面说过了


    摘要: 先谢谢来看的人了~~~~~~~~~ ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE