观自在书院

海纳百川有容则大 壁立千仞无欲则刚

博客园 首页 新随笔 联系 订阅 管理
原文:http://dotnet.aspx.cc/ShowDetail.aspx?id=B12283DE-DB20-4322-ACCC-12724442808A
我这只是加了一个下拉列表框DropDownList跳转
----------------------------------cs start-----------------------------------------------

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Web;

using System.Web.SessionState;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;

using System.Data.OleDb;

 

namespace Hover

{

     /// <summary>

     /// DataGridPaging 的摘要说明。

     /// </summary>

     public class DataGridPaging : System.Web.UI.Page

     {

         protected System.Web.UI.WebControls.DataGrid MyDataGrid;

         protected System.Web.UI.WebControls.Label lblPageCount;

         protected System.Web.UI.WebControls.Label lblCurrentIndex;

         protected System.Web.UI.WebControls.LinkButton btnFirst;

         protected System.Web.UI.WebControls.LinkButton btnPrev;

         protected System.Web.UI.WebControls.LinkButton btnNext;

         protected System.Web.UI.WebControls.LinkButton btnLast;

         protected System.Web.UI.WebControls.DropDownList DropDownList1;

         protected System.Web.UI.WebControls.Label lblNum;

         Hover.Conn obj=new Hover.Conn();

    

         private void Page_Load(object sender, System.EventArgs e)

         {

              // 在此处放置用户代码以初始化页面

              btnFirst.Text = "最首页";

              btnPrev.Text = "前一页";

              btnNext.Text = "下一页";

              btnLast.Text = "最后页";

              obj.open();

              BindGrid();

              BindPag();

         }

        

         private void ShowStats()

         {

              lblCurrentIndex.Text = " " + (MyDataGrid.CurrentPageIndex + 1).ToString() + " ";

              lblPageCount.Text = "总共 " + MyDataGrid.PageCount.ToString() + " ";

              lblNum.Text=MyDataGrid.PageSize .ToString() +"/";

              if (MyDataGrid.CurrentPageIndex==0)

              {

                   btnFirst.Enabled =false;

                   btnPrev.Enabled =false;

              }

              else

              {

                   btnFirst.Enabled =true;

                   btnPrev.Enabled =true;

              }

              if (MyDataGrid.CurrentPageIndex==MyDataGrid.PageCount-1)

              {

                   btnNext.Enabled =false;

                   btnLast.Enabled =false;

              }

              else

              {

                   btnNext.Enabled =true;

                   btnLast.Enabled =true;

              }

         }

 

         public void PagerButtonClick(object sender, EventArgs e)

         {

              string arg = ((LinkButton)sender).CommandArgument.ToString();

              switch(arg)

              {

                   case "next":

                       if (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1))

                       {

                            MyDataGrid.CurrentPageIndex += 1;

                       }

                       break;

                   case "prev":

                       if (MyDataGrid.CurrentPageIndex > 0)

                       {

                            MyDataGrid.CurrentPageIndex -= 1;

                       }

                       break;

                   case "last":

                       MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1);

                       break;

                   default:

                       MyDataGrid.CurrentPageIndex = System.Convert.ToInt32(arg);

                       break;

              }

              BindGrid();

              ShowStats();

 

             

         }

         public void BindGrid()

         {

             

              DataSet ds  = new DataSet();

              OleDbDataAdapter adapter  = new OleDbDataAdapter("Select * from news", obj.link);

              adapter.Fill(ds, "Document");

              MyDataGrid.DataSource = ds.Tables["Document"].DefaultView;

              MyDataGrid.DataBind();

              ShowStats();

         }

         public void MyDataGrid_Page(object sender, DataGridPageChangedEventArgs e)

         {

              int startIndex ;

              startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize;

              MyDataGrid.CurrentPageIndex = e.NewPageIndex;

              BindGrid();

              ShowStats();

 

         }

 

        

         #region Web 窗体设计器生成的代码

         override protected void OnInit(EventArgs e)

         {

              //

              // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。

              //

              InitializeComponent();

              base.OnInit(e);

         }

        

         /// <summary>

         /// 设计器支持所需的方法 - 不要使用代码编辑器修改

         /// 此方法的内容。

         /// </summary>

         private void InitializeComponent()

         {   

              this.Load += new System.EventHandler(this.Page_Load);

 

         }

         #endregion

 

    

 

         private  void BindPag()

         {

              System.Web.UI.WebControls.ListItem li=new ListItem();

              int i;

              for(i=1;i<=this.MyDataGrid.PageCount;i++)

              {

              //li.Text =i.ToString(); 这里如果注释去掉,在显示DropDownList1的时候就会有两个1值也是1这里有些不明白!

              li.Value=i.ToString();

              this.DropDownList1 .Items.Add(li);

              }

              this.DropDownList1.DataBind();

         }

 

 

    

     }

}
---------------cs end-------------------------------------------------------
-------------aspx start-----------------------------------------------------

<%@ Page language="c#" Codebehind="DataGridPaging.aspx.cs" AutoEventWireup="false" Inherits="Hover.DataGridPaging" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
 <HEAD>
  <title>DataGridPaging</title>
  <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
  <meta name="CODE_LANGUAGE" Content="C#">
  <meta name="vs_defaultClientScript" content="JavaScript">
  <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
 </HEAD>
 <body>
  <form id="Form1" method="post" runat="server">
   <p style="FONT-SIZE:9pt" align="center"><asp:datagrid id="MyDataGrid" runat="server" AutoGenerateColumns="False" HorizontalAlign="Center"
     AlternatingItemStyle-BackColor="#eeeeee" HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdana" CellSpacing="0" CellPadding="3"
     GridLines="Both" BorderWidth="1" BorderColor="black" OnPageIndexChanged="MyDataGrid_Page" PagerStyle-HorizontalAlign="Right" PagerStyle-Mode="NumericPages"
     PageSize="5" AllowPaging="True">
     <AlternatingItemStyle BackColor="#EEEEEE"></AlternatingItemStyle>
     <HeaderStyle BackColor="#AAAADD" Font-Bold="True" HorizontalAlign="Center"></HeaderStyle>
     <PagerStyle HorizontalAlign="Right" Mode="NumericPages"></PagerStyle>
     <Columns>
      <asp:BoundColumn HeaderText="标题" DataField="Title" HeaderStyle-Width="480px"></asp:BoundColumn>
      <asp:BoundColumn HeaderText="发表日期" DataField="addtime" DataFormatString="{0:yyyy-MM-dd hh:mm:ss}"></asp:BoundColumn>
     </Columns>
    </asp:datagrid>
   </p>
   <p style="FONT-SIZE:9pt" align="center">
    <asp:label id="lblPageCount" runat="server"></asp:label>&nbsp;
    <asp:label id="lblCurrentIndex" runat="server"></asp:label>&nbsp;
    <asp:Label id="lblNum" runat="server"></asp:Label>&nbsp;
    <asp:linkbutton id="btnFirst" onclick="PagerButtonClick" runat="server" Font-Name="verdana" Font-size="8pt"
     ForeColor="navy" CommandArgument="0"></asp:linkbutton>&nbsp;
    <asp:linkbutton id="btnPrev" onclick="PagerButtonClick" runat="server" Font-Name="verdana" Font-size="8pt"
     ForeColor="navy" CommandArgument="prev"></asp:linkbutton>&nbsp;
    <asp:linkbutton id="btnNext" onclick="PagerButtonClick" runat="server" Font-Name="verdana" Font-size="8pt"
     ForeColor="navy" CommandArgument="next"></asp:linkbutton>&nbsp;
    <asp:linkbutton id="btnLast" onclick="PagerButtonClick" runat="server" Font-Name="verdana" Font-size="8pt"
     ForeColor="navy" CommandArgument="last"></asp:linkbutton>
    <asp:DropDownList id="DropDownList1" runat="server" AutoPostBack="True"></asp:DropDownList>
   </p>
  </form>
 </body>
</HTML>
------------------aspx end -------------------------------------

posted on 2004-03-23 15:45  观自在书院  阅读(2755)  评论(7编辑  收藏  举报