.NET中使用datagrid实现的简单分页效果

1@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="Try1.WebForm1" 
 1<html>
 2<head>
 3<title>WebForm1</title>
 4<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR"/>
 5<meta content="C#" name="CODE_LANGUAGE"/>
 6<meta content="JavaScript" name="vs_defaultClientScript"/>
 7<meta content=" http://schemas.microsoft.com/intellisense/ie5 " name="vs_targetSchema"/>
 8</head>
 9<body>
10<form id="Form1" method="post" runat="server">
11<p><font face="宋体"></font> </p>
12<p>
13<asp:datagrid allowpaging="True" allowsorting="True" backcolor="White" bordercolor="#3366CC" borderstyle="None" borderwidth="1px" cellpadding="4" id="DataGrid1" pagesize="5" runat="server">
14<selecteditemstyle backcolor="#009999" font-bold="True" forecolor="#CCFF99"></selecteditemstyle>
15<itemstyle backcolor="White" forecolor="#003399"></itemstyle>
16<headerstyle backcolor="#003399" font-bold="True" forecolor="#CCCCFF"></headerstyle>
17<footerstyle backcolor="#99CCCC" forecolor="#003399"></footerstyle>
18<pagerstyle backcolor="#99CCCC" forecolor="#003399" horizontalalign="Left" mode="NumericPages" pagebuttoncount="6"></pagerstyle>
19</asp:datagrid></p>
20<p>
21<asp:panel id="Panel1" runat="server">
22<asp:linkbutton commandname="Previous" id="btnPrevious" runat="server">&lt;=Previous</asp:linkbutton>
23<font face="宋体">             
24<asp:linkbutton commandname="Next" id="btnNext" runat="server">Next=&gt;</asp:linkbutton>
25<asp:textbox columns="2" id="txtIndex" maxlength="2" runat="server" width="24px"></asp:textbox>
26<asp:button backcolor="Gainsboro" bordercolor="Silver" borderstyle="Solid" borderwidth="1px" id="btnGo" runat="server" text="Go!"></asp:button>
27<asp:label forecolor="Red" id="lblError" runat="server" visible="False">No that page!</asp:label></font>
28</asp:panel></p>
29<font face="宋体"></font>
30<asp:panel id="pnlIndex" runat="server">Panel</asp:panel>
31</form>
32</body>
33</html>

//-------后台代码---------------------------------
//-------使用的数据库是sqlserver2000示例数据库------
using System;
using System.Collections;
using System.ComponentModel;
using System.Configuration;
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.SqlClient;
namespace Try1
{
///

1<summary>   
2/// WebForm1 的摘要说明。   
3/// </summary>

public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid1;
private DataSet dsNorth;
protected System.Web.UI.WebControls.Panel Panel1;
protected System.Web.UI.WebControls.LinkButton btnPrevious;
protected System.Web.UI.WebControls.LinkButton btnNext;

//使用dataview,以实现排序效果
private DataView dvNorth;
protected System.Web.UI.WebControls.TextBox txtIndex;
protected System.Web.UI.WebControls.Button btnGo;
protected System.Web.UI.WebControls.Label lblError;
protected System.Web.UI.WebControls.Panel pnlIndex;

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
LoadDataSet();
InitpnlIndex();
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

///

1<summary>   
2/// 设计器支持所需的方法 - 不要使用代码编辑器修改   
3/// 此方法的内容。   
4/// </summary>

private void InitializeComponent()
{
this.DataGrid1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
this.DataGrid1.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.DataGrid1_SortCommand);
this.btnPrevious.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnNext.Click += new System.EventHandler(this.NavigationButtonClick);
this.btnGo.Click += new System.EventHandler(this.btnGo_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion

//加载数据集
private void LoadDataSet()
{
SqlConnection cnNorth=new SqlConnection(ConfigurationSettings.AppSettings["cnNorth.ConnectionString"]);
string cmdString="SELECT * FROM Customers";
SqlDataAdapter adNorth=new SqlDataAdapter(cmdString,cnNorth);
cnNorth.Open();
dsNorth=new DataSet();
try
{
adNorth.Fill(dsNorth,"North");
}
catch
{
throw;
}
finally
{
cnNorth.Close();
}
dvNorth=new DataView();
dvNorth.Table=dsNorth.Tables["North"];
DataGrid1.DataSource=dvNorth;
DataGrid1.DataBind();
}

//初始化索引
private void InitpnlIndex()
{
pnlIndex.Controls.Clear();
int pageCount;
LinkButton btnIndex;
for (pageCount=0;pageCount

 1<datagrid1.pagecount;pagecount++) "));="" "next":="" "previous":="" ;="" break;="" btngo_click(object="" btnindex="new" btnindex.click+="new" btnindex.commandname="pageCount.ToString();" btnindex.text="btnText.ToString();" btntext="pageCount+1;" case="" catch(exception="" datagrid1.currentpageindex="Math.Min(DataGrid1.CurrentPageIndex+1,DataGrid1.PageCount-1);" datagrid1.databind();="" datagrid1_pageindexchanged(object="" datagrid1_sortcommand(object="" default:="" direction="((LinkButton)sender).CommandName;" e)="" eventhandler(this.indexbuttonclick);="" ex)="" finally="" if(pageindex="" indexbuttonclick(object="" int="" lblerror.text="No that page!" lblerror.visible="false;" linkbutton();="" literalcontrol("="" navigationbuttonclick(object="" pageindex="Convert.ToInt32(txtIndex.Text);" pnlindex.controls.add(btnindex);="" pnlindex.controls.add(new="" private="" sender,="" sender,system.eventargs="" source,="" string="" switch(direction.toupper())="" system.eventargs="" system.web.ui.webcontrols.datagridpagechangedeventargs="" system.web.ui.webcontrols.datagridsortcommandeventargs="" this.dvnorth.sort="e.SortExpression;" try="" void="" {="" }="" 去第几页效果="" 排序效果实现="" 索引单击效果="" 翻页效果="">0&amp;&amp;pageIndex&lt;=DataGrid1.PageCount)   
 2{   
 3try   
 4{   
 5DataGrid1.CurrentPageIndex=Math.Min(DataGrid1.PageCount,pageIndex-1);   
 6DataGrid1.DataBind();   
 7}   
 8catch   
 9{   
10lblError.Visible=true;   
11  
12}   
13finally   
14{   
15lblError.Visible=false;   
16}   
17}   
18else   
19{   
20lblError.Visible=true;   
21}   
22}   
23  
24}   
25} 
26
27![datagrid分页效果](http://dev.csdn.net/images/blog_csdn_net/MantelGreen/20050503205303.jpg)</datagrid1.pagecount;pagecount++)>
Published At
Categories with Web编程
Tagged with
comments powered by Disqus