編程之道

          無論是批評的,贊揚的,指著的都請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 瘋流成性 閱讀(247) 評論(0)  編輯  收藏 所屬分類: .NET

          主站蜘蛛池模板: 武宁县| 南郑县| 浦江县| 乐平市| 香河县| 斗六市| 团风县| 濮阳县| 崇州市| 灯塔市| 广安市| 玛曲县| 塘沽区| 朔州市| 萍乡市| 盐城市| 汤阴县| 苗栗县| 宁晋县| 保德县| 长白| 泸州市| 从化市| 三明市| 滨海县| 河北区| 西平县| 邹平县| 颍上县| 元江| 恩施市| 玉田县| 郑州市| 玉门市| 颍上县| 枝江市| 云浮市| 克拉玛依市| 尉犁县| 肃宁县| 大庆市|