編程之道

          無論是批評的,贊揚的,指著的都請EMAIL給我,你的建議將是我前進的動力! 聯系我

          關于DataGrid分頁問題

                 我總在別人面前夸VS.NET是這么的智能,是多么的為“民工”著想。他對程序員的關照絕對不亞于牛哥對織女的癡情。前天碰到了一個分頁的問題,本來以為只要添加幾個屬性就搞定了,沒想到不行。那天心里特別煩躁(估計太熱的關系),我搞了好久也沒搞定。一氣之下去洗了把澡,突然想到我干嗎不網上找答案?靠,我平時找資料很勤快的,怎么今天反映這么遲鈍。
                 一會兒,我就找到答案了,錯就錯在我太相信VS.NET的智能了。dataGrid雖然提供了翻頁的功能,但是不太智能,需要你通過一個事件把新頁設置成當年頁。

          這是datashow顯示部分,注意一定要再<form>內
          <asp:datagrid id="dataShow" Runat="server" OnPageIndexChanged="dataShow_Changed" AllowPaging=True PageSize=2 PagerStyle-HorizontalAlign=Right Width=100%></asp:datagrid>

          代碼如下:
              OleDbConnection conn;
                  
          string strcon;
                  
          string strcmd;
                  
          protected System.Web.UI.WebControls.Label label1;
                  OleDbDataAdapter cmd;
                  DataSet ds;
                  
          private void Page_Load(object sender, System.EventArgs e)
                  
          {
                          strcon
          ="Provider=microsoft.jet.oledb.4.0;data source=c:\\inetpub\\wwwroot\\Flowers\\FlowerDB.mdb";
                          conn
          =new OleDbConnection(strcon);
                          strcmd
          ="select FlowerName,FlowerPrice from Flowers where FlowerTypeID=(select FlowerTypeID from FlowerType where FlowerTypeName=@name)";
                          cmd
          =new OleDbDataAdapter(strcmd,conn);
                          cmd.SelectCommand.Parameters.Add(
          new OleDbParameter("@name", OleDbType.Char,80));
                          cmd.SelectCommand.Parameters[
          "@name"].Value=Session["name"];
                          ds
          =new DataSet();
                          cmd.Fill(ds,
          "Flowers");    
                          dataShow.DataSource
          =ds.Tables["Flowers"].DefaultView;    
                          dataShow.DataBind();
                          label1.Text
          ="一共有" +ds.Tables["Flowers"].Rows.Count.ToString()+"條記錄。";

                  }

          //這個事件就是當用戶選擇改變當前頁的索引時,就把新頁的索引作為當前頁的索引,同時需要再次綁定
                  public void dataShow_Changed(Object sender, DataGridPageChangedEventArgs e)
                  
          {
                      dataShow.CurrentPageIndex 
          = e.NewPageIndex;
                      dataShow.DataBind();
                      
                  }



          posted on 2005-08-16 18:21 瘋流成性 閱讀(242) 評論(0)  編輯  收藏 所屬分類: .NET

          主站蜘蛛池模板: 通道| 威远县| 普宁市| 永康市| 阳春市| 彭水| 招远市| 平凉市| 安远县| 噶尔县| 仁布县| 吉木萨尔县| 改则县| 贵阳市| 保靖县| 宁乡县| 秭归县| 南安市| 乌兰察布市| 铁岭市| 澳门| 马鞍山市| 蓝山县| 梅河口市| 陈巴尔虎旗| 临西县| 祁东县| 呼和浩特市| 裕民县| 七台河市| 太白县| 偏关县| 扶沟县| 清水县| 河北区| 锡林郭勒盟| 洪湖市| 蒙山县| 嵩明县| 崇信县| 富源县|