今天下载了一个动软代码自动生成器的一个框架,发现里面有一个翻页控件,觉得使用起来很简单,但没有测试其效率,估计还不错.下面是一个简单的应用.
控件的DLL下载
http://files.cnblogs.com/huazi4995/LtpPageControl.rar
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 LtpPageControl;
using System.Data.SqlClient;
using System.Data.OracleClient;
namespace LSA
{
/**//// <summary>
/// PageRecord 的摘要说明。
/// </summary>
public class PageRecord : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid grid;
protected LtpPageControl.Page01 Page011;
protected LtpPageControl.Page02 Page021;
protected LtpPageControl.Page03 Page031;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!Page.IsPostBack)
{
//页索引
int pageIndex=1;
if(Request.Params["page"]!=null && Request.Params["page"].ToString()!="")
{
Session["Modulepagesys"]=Convert.ToInt32(Request.Params["page"]);
pageIndex=Convert.ToInt32(Request.Params["page"]);
}
else
{
if(Session["Modulepagesys"]!=null && Session["Modulepagesys"].ToString()!="")
{
pageIndex=Convert.ToInt32(Session["Modulepagesys"]);
}
else
{
pageIndex=1;
Session["Modulepagesys"]=1;
}
}
dataBind(pageIndex);
}
}
Web 窗体设计器生成的代码#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 dataBind(int pageIndex)
{
pageIndex--;
//连接SQL SERVER
// string str="server=(local);uid=sa;pwd=sundun;database=lsa_anqiu";
// SqlConnection con=new SqlConnection(str);
// SqlDataAdapter da=new SqlDataAdapter("select users.bianhao,users.xingming from users inner join userbumenrole on users.bianhao=userbumenrole.userbh",con);
// //select users.bianhao,users.xingming from users inner join userbumenrole on users.bianhao=userbumenrole.userbh
// DataSet ds=new DataSet();
// da.Fill(ds);
//连接ORACLE
string str="data source=sundun;uid=lsa_normal;pwd=sundun";
OracleConnection conn=new OracleConnection(str);
OracleDataAdapter da=new OracleDataAdapter("select users.bianhao,users.xingming from users inner join userbumenrole on users.bianhao=userbumenrole.userbh",conn);
DataSet ds=new DataSet();
da.Fill(ds);
grid.DataSource=ds.Tables[0].DefaultView;
int record_Count=ds.Tables[0].Rows.Count;
int page_Size=grid.PageSize;
int totalPages = int.Parse(Math.Ceiling((double)record_Count/page_Size).ToString());
if(totalPages>0)
{
if ((pageIndex+1)>totalPages)
pageIndex = totalPages-1;
}
else
{
pageIndex=0;
}
grid.CurrentPageIndex=pageIndex;
grid.DataBind();
int page_Count=grid.PageCount;
int page_Current=pageIndex+1;
Page011.Record_Count=record_Count;
Page011.Page_Count=page_Count;
Page011.Page_Current=page_Current;
Page011.Page_Size=page_Size;
Page021.Page_Size=page_Size;
Page021.Page_Current=page_Current;
Page021.Page_Count=page_Count;
Page031.Page_Size=page_Size;
Page031.Page_Current=page_Current;
Page031.Page_Count=page_Count;
Page031.Record_Count=record_Count;
}
}
}
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 LtpPageControl;
using System.Data.SqlClient;
using System.Data.OracleClient;
namespace LSA
{
/**//// <summary>
/// PageRecord 的摘要说明。
/// </summary>
public class PageRecord : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid grid;
protected LtpPageControl.Page01 Page011;
protected LtpPageControl.Page02 Page021;
protected LtpPageControl.Page03 Page031;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!Page.IsPostBack)
{
//页索引
int pageIndex=1;
if(Request.Params["page"]!=null && Request.Params["page"].ToString()!="")
{
Session["Modulepagesys"]=Convert.ToInt32(Request.Params["page"]);
pageIndex=Convert.ToInt32(Request.Params["page"]);
}
else
{
if(Session["Modulepagesys"]!=null && Session["Modulepagesys"].ToString()!="")
{
pageIndex=Convert.ToInt32(Session["Modulepagesys"]);
}
else
{
pageIndex=1;
Session["Modulepagesys"]=1;
}
}
dataBind(pageIndex);
}
}
Web 窗体设计器生成的代码#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 dataBind(int pageIndex)
{
pageIndex--;
//连接SQL SERVER
// string str="server=(local);uid=sa;pwd=sundun;database=lsa_anqiu";
// SqlConnection con=new SqlConnection(str);
// SqlDataAdapter da=new SqlDataAdapter("select users.bianhao,users.xingming from users inner join userbumenrole on users.bianhao=userbumenrole.userbh",con);
// //select users.bianhao,users.xingming from users inner join userbumenrole on users.bianhao=userbumenrole.userbh
// DataSet ds=new DataSet();
// da.Fill(ds);
//连接ORACLE
string str="data source=sundun;uid=lsa_normal;pwd=sundun";
OracleConnection conn=new OracleConnection(str);
OracleDataAdapter da=new OracleDataAdapter("select users.bianhao,users.xingming from users inner join userbumenrole on users.bianhao=userbumenrole.userbh",conn);
DataSet ds=new DataSet();
da.Fill(ds);
grid.DataSource=ds.Tables[0].DefaultView;
int record_Count=ds.Tables[0].Rows.Count;
int page_Size=grid.PageSize;
int totalPages = int.Parse(Math.Ceiling((double)record_Count/page_Size).ToString());
if(totalPages>0)
{
if ((pageIndex+1)>totalPages)
pageIndex = totalPages-1;
}
else
{
pageIndex=0;
}
grid.CurrentPageIndex=pageIndex;
grid.DataBind();
int page_Count=grid.PageCount;
int page_Current=pageIndex+1;
Page011.Record_Count=record_Count;
Page011.Page_Count=page_Count;
Page011.Page_Current=page_Current;
Page011.Page_Size=page_Size;
Page021.Page_Size=page_Size;
Page021.Page_Current=page_Current;
Page021.Page_Count=page_Count;
Page031.Page_Size=page_Size;
Page031.Page_Current=page_Current;
Page031.Page_Count=page_Count;
Page031.Record_Count=record_Count;
}
}
}
<%
@ Register TagPrefix="cc1" Namespace="LtpPageControl" Assembly="LtpPageControl"
%>
<% @ Page language="c#" Codebehind="PageRecord.aspx.cs" AutoEventWireup="false" Inherits="LSA.PageRecord" %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
< HTML >
< HEAD >
< title > PageRecord </ 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 MS_POSITIONING ="GridLayout" >
< form id ="Form1" method ="post" runat ="server" >
< TABLE id ="Table1" style ="Z-INDEX: 104; LEFT: 8px; POSITION: absolute; TOP: 8px" cellSpacing ="1"
cellPadding ="1" width ="100%" border ="1" >
< TR >
< TD >
< cc1:page01 id ="Page011" runat ="server" Page_Index ="PageRecord.aspx" Page_Add ="add.aspx" Page_Makesql ="makesql.aspx"
Width ="100%" ></ cc1:page01 ></ TD >
</ TR >
< TR >
< TD >
< asp:DataGrid id ="grid" runat ="server" AllowPaging ="True" Width ="100%" >
< PagerStyle Visible ="False" ></ PagerStyle >
</ asp:DataGrid ></ TD >
</ TR >
< TR >
< TD >
< cc1:page02 id ="Page021" runat ="server" Page_Index ="PageRecord.aspx" Width ="100%" ></ cc1:page02 ></ TD >
</ TR >
< TR >
< TD >
< cc1:page03 id ="Page031" runat ="server" Page_Index ="PageRecord.aspx" Width ="100%" ></ cc1:page03 ></ TD >
</ TR >
</ TABLE >
</ form >
</ body >
</ HTML >
<% @ Page language="c#" Codebehind="PageRecord.aspx.cs" AutoEventWireup="false" Inherits="LSA.PageRecord" %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
< HTML >
< HEAD >
< title > PageRecord </ 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 MS_POSITIONING ="GridLayout" >
< form id ="Form1" method ="post" runat ="server" >
< TABLE id ="Table1" style ="Z-INDEX: 104; LEFT: 8px; POSITION: absolute; TOP: 8px" cellSpacing ="1"
cellPadding ="1" width ="100%" border ="1" >
< TR >
< TD >
< cc1:page01 id ="Page011" runat ="server" Page_Index ="PageRecord.aspx" Page_Add ="add.aspx" Page_Makesql ="makesql.aspx"
Width ="100%" ></ cc1:page01 ></ TD >
</ TR >
< TR >
< TD >
< asp:DataGrid id ="grid" runat ="server" AllowPaging ="True" Width ="100%" >
< PagerStyle Visible ="False" ></ PagerStyle >
</ asp:DataGrid ></ TD >
</ TR >
< TR >
< TD >
< cc1:page02 id ="Page021" runat ="server" Page_Index ="PageRecord.aspx" Width ="100%" ></ cc1:page02 ></ TD >
</ TR >
< TR >
< TD >
< cc1:page03 id ="Page031" runat ="server" Page_Index ="PageRecord.aspx" Width ="100%" ></ cc1:page03 ></ TD >
</ TR >
</ TABLE >
</ form >
</ body >
</ HTML >