求DataGrid分页的代码,平台是VS 2003

解决方案 »

  1.   


    <%@ Import Namespace="System.Data" %><html>
    <script language="C#" runat="server">ICollection CreateDataSource() {
    DataTable dt = new DataTable();
    DataRow dr;dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
    dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
    dt.Columns.Add(new DataColumn("DateTimeValue", typeof(string)));
    dt.Columns.Add(new DataColumn("BoolValue", typeof(bool)));for (int i = 0; i < 200; i++) {
    dr = dt.NewRow();dr[0] = i;
    dr[1] = "Item " + Int32.ToString(i);
    dr[2] = DateTime.Now.ToShortDateString();
    dr[3] = (i % 2 != 0) ? true : false;dt.Rows.Add(dr);
    }DataView dv = new DataView(dt);
    return dv;
    }void Page_Load(Object sender, EventArgs e) {
    if (chk1.Checked) {
    MyDataGrid.PagerStyle.Mode=PagerMode.NumericPages;

    else {
    MyDataGrid.PagerStyle.Mode=PagerMode.NextPrev;
    } BindGrid();
    }void MyDataGrid_Page(Object sender, DataGridPageChangedEventArgs e) {
    BindGrid();
    }void BindGrid() {
    MyDataGrid.DataSource = CreateDataSource();
    MyDataGrid.DataBind();
    ShowStats();
    }void ShowStats() {
    lblCurrentIndex.Text = "CurrentPageIndex is " + MyDataGrid.CurrentPageIndex;
    lblPageCount.Text = "PageCount is " + MyDataGrid.PageCount;
    }
    </script><body><h3><font face="Verdana">Basic Paging with DataGrid</font></h3><form runat=server><ASP:DataGrid id="MyDataGrid" runat="server"
    AllowPaging="True"
    PageSize="10"
    PagerStyle-Mode="NumericPages"
    PagerStyle-HorizontalAlign="Right"
    PagerStyle-NextPageText="Next"
    PagerStyle-PrevPageText="Prev"
    OnPageIndexChanged="MyDataGrid_Page"
    BorderColor="black"
    BorderWidth="1"
    GridLines="Both"
    CellPadding="3"
    CellSpacing="0"
    Font-Name="Verdana"
    Font-Size="8pt"
    HeaderStyle-BackColor="#aaaadd"
    AlternatingItemStyle-BackColor="#eeeeee"
    /><p>
    <asp:Checkbox id="chk1" runat="server"
    Text="Show numeric page navigation buttons"
    Font-Name="Verdana"
    Font-Size="8pt"
    AutoPostBack="true"
    /><p>
    <table bgcolor="#eeeeee" cellpadding="6"><tr><td nowrap><font face="Verdana" size="-2"><asp:Label id="lblCurrentIndex" runat="server" /><br>
    <asp:Label id="lblPageCount" runat="server" /><br></font></td></tr></table>
    </form></body>
    </html>
      

  2.   

    dg.allowpage=truedg_pageindexchanging()
    {
     dg.index = e.newindex;
    dg.datasource=XX;
    dg.databind()
    }
      

  3.   

    int curpage =int.Parse(this.curlab1.Text);
    PagedDataSource ps = new PagedDataSource();
    ps.DataSource = ds.Tables[0].DefaultView;
    //启用分页
    ps.AllowPaging = true;
    //一页显示的记录条数
    ps.PageSize = 8;
    ps.CurrentPageIndex = curpage -1;
    lnkbtnBack.Enabled = true;
    lnkbtnNext.Enabled = true;
    lnkbtnOne.Enabled = true;
    lnkbtnUp.Enabled = true;
    if (curpage == 1)
    {
    this.lnkbtnOne.Enabled = false;
    this.lnkbtnUp.Enabled = false;
    }
    if (curpage == ps.PageCount)
    {
    this.lnkbtnBack.Enabled = false;
    this.lnkbtnNext.Enabled = false;
    }
    pagecount1.Text = Convert.ToString(ps.PageCount);
    DataGrid.DataSource = ps ;
    DataGrid.DataBind();