asp.net 分页html代码,.NET_asp.net 源码保存 用程序分页,源码: 复制代码 代码如下: nam - phpStudy...

本文详细介绍了ASP.NET中用于分页操作的PageTools类的源码,包括设置表名、列名、条件、排序等属性,并提供了获取分页数据和总记录数的方法。在后台代码中,演示了如何使用该类进行数据绑定和页面导航。在前端,实现了分页按钮的点击事件处理,确保了分页功能的正常运行。
摘要由CSDN通过智能技术生成

asp.net 源码保存 用程序分页

源码:

复制代码 代码如下:

namespace Alex

{

public class PageTools

{

///

/// 表名称

///

private string tableName;

public string TableName

{

get { return tableName; }

set { tableName = value; }

}

///

/// 返回的列名

///

private string returnColumns;

public string ReturnColumns

{

get { return returnColumns; }

set { returnColumns = value; }

}

///

/// 条件

///

private string where;

public string Where

{

get { return where; }

set { where = value; }

}

///

/// 排序列

///

private string orderColumnName;

public string OrderColumnName

{

get { return orderColumnName; }

set { orderColumnName = value; }

}

///

/// 排序,true为降序

///

private Boolean orderDesc;

public Boolean OrderDesc

{

get { return orderDesc; }

set { orderDesc = value; }

}

///

/// 主键

///

private string keyColumnName;

public string KeyColumnName

{

get { return keyColumnName; }

set { keyColumnName = value; }

}

///

/// 页面大小

///

private Int32 pageSize;

public Int32 PageSize

{

get { return pageSize; }

set { pageSize = value; }

}

///

/// 第几页

///

private Int32 pageIndex;

public Int32 PageIndex

{

get { return pageIndex; }

set { pageIndex = value; }

}

///

/// SQL参数

///

private SqlParameter[] whereParams;

public SqlParameter[] WhereParams

{

get { return whereParams; }

set { whereParams = value; }

}

///

///

/// 条件

/// 排序列

/// 排序,true为降序

/// 主键

/// 页面大小

/// 第几页

/// SQL参数

public PageTools(string tableName, string returnColumns, string where, string orderColumnName, Boolean orderDesc,

string keyColumnName, Int32 pageSize, Int32 pageIndex, params SqlParameter[] whereParams)

{

this.TableName = tableName;

this.ReturnColumns = returnColumns;

this.Where = where;

this.OrderColumnName = orderColumnName;

this.OrderDesc = orderDesc;

this.KeyColumnName = keyColumnName;

this.PageSize = pageSize;

this.PageIndex = pageIndex;

this.WhereParams = WhereParams;

}

public PageTools() { }

public DataTable RetrievePagerData()

{

if (pageIndex == 1)

{

return RetrieveTopData();

}

else

{

string sql = string.Format("select top {0} {1} from {2} where {3} and {6} not in ( select top {7} {6} from {2} where {3} order by {4} {5} ) order by {4} {5}", pageSize, returnColumns, tableName, where, orderColumnName, orderDesc == true ? "desc" : string.Empty, keyColumnName, pageSize * (pageIndex - 1));

return DbHelperSQL.Query(sql, CheckNull(whereParams)).Tables[0];

}

}

///

/// 获取数据的条数

///

///

///

///

///

public Int32 RetrieveDataCount()

{

string sql = string.Format("select count(*) from {0} where {1}" , tableName, where);

Int32 result = (Int32)DbHelperSQL.GetSingle(sql, CheckNull(whereParams));

return result;

}

///

/// 获取第一页

///

///

///

///

///

///

///

///

///

public DataTable RetrieveTopData()

{

string sql = string.Format("select top {0} {1} from {2} where {3} order by {4} {5}", pageSize, returnColumns, tableName, where, orderColumnName, orderDesc == true ? "desc" : string.Empty);

return DbHelperSQL.Query(sql, whereParams).Tables[0];

}

///

/// 移除空参数

///

///

///

private SqlParameter[] CheckNull(SqlParameter[] paras)

{

if (paras == null)

{

return null;

}

List list = new List();

foreach (SqlParameter para in paras)

{

if (para != null) list.Add(para);

}

return list.ToArray();

}

}

}

页面后台:

复制代码 代码如下:

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

recordCount = page.RetrieveDataCount();

totalPages = (int)(Math.Ceiling((double)recordCount / (double)page.PageSize));

if (!IsPostBack)

{

BindData();

}

}

Alex.PageTools page = new Alex.PageTools("Test", "*", "1=1", "USER_Account", false, "USER_Account", 10, 1, null);

int recordCount;

public int totalPages;

private void BindData()

{

int pageIndex = SmartGridView1.PageIndex;

if(totalPages>0)

{

if(pageIndex>totalPages-1)

{

pageIndex=totalPages-1;

}

}

else

{

pageIndex=0;

}

SmartGridView1.PageIndex=pageIndex;

page.PageIndex=pageIndex+1;

SmartGridView1.DataSource = page.RetrievePagerData();

SmartGridView1.DataBind();

if (this.SmartGridView1.PageIndex == 0)

{

this.btnFirst.Enabled = false;

this.btnPrev.Enabled = false;

if (totalPages == 1)

{

this.btnLast.Enabled = false;

this.btnNext.Enabled = false;

}

}

else if (this.SmartGridView1.PageIndex == totalPages - 1)

{

this.btnLast.Enabled = false;

this.btnNext.Enabled = false;

}

this.lblpagesum.Text = totalPages.ToString();

this.lblpage.Text = (pageIndex + 1).ToString();

this.lblrowscount.Text = recordCount.ToString();

}

public void NavigateToPage(object sender, CommandEventArgs e)

{

btnFirst.Enabled = true;

btnPrev.Enabled = true;

btnNext.Enabled = true;

btnLast.Enabled = true;

string pageinfo = e.CommandArgument.ToString();

switch (pageinfo)

{

case "Prev":

if (this.SmartGridView1.PageIndex > 0)

{

this.SmartGridView1.PageIndex -= 1;

}

break;

case "Next":

if (this.SmartGridView1.PageIndex < (totalPages - 1))

{

this.SmartGridView1.PageIndex += 1;

}

break;

case "First":

this.SmartGridView1.PageIndex = 0;

break;

case "Last":

this.SmartGridView1.PageIndex = totalPages - 1;

break;

}

if (this.SmartGridView1.PageIndex == 0)

{

btnFirst.Enabled = false;

btnPrev.Enabled = false;

if (totalPages == 1)

{

btnLast.Enabled = false;

btnNext.Enabled = false;

}

}

else if (this.SmartGridView1.PageIndex == totalPages - 1)

{

btnLast.Enabled = false;

btnNext.Enabled = false;

}

BindData();

}

protected void gobtnClick(object sender, EventArgs e)

{

int goPageIndex = Convert.ToInt32(this.goCount.Text.Trim());

if (goPageIndex > 0)

{

if (goPageIndex >= totalPages)

{

this.SmartGridView1.PageIndex = totalPages - 1;

}

else

{

this.SmartGridView1.PageIndex = goPageIndex - 1;

}

}

else if(goPageIndex <=0)

{

this.SmartGridView1.PageIndex = 0;

}

if (this.SmartGridView1.PageIndex == 0)

{

btnFirst.Enabled = false;

btnPrev.Enabled = false;

btnLast.Enabled = true;

btnNext.Enabled = true;

if (totalPages == 1)

{

btnLast.Enabled = false;

btnNext.Enabled = false;

}

}

else if (this.SmartGridView1.PageIndex == totalPages - 1)

{

btnLast.Enabled = false;

btnNext.Enabled = false;

btnFirst.Enabled = true;

btnPrev.Enabled = true;

}

else

{

btnLast.Enabled = true;

btnFirst.Enabled = true;

btnNext.Enabled = true;

btnPrev.Enabled = true;

}

BindData();

}

页面前台:

代码

复制代码 代码如下:

function validate() {

var gocount=document.getElementById("goCount").value;

if(gocount=="")

{

alert("请先填写你要导航的页面");

return false;

}

var result;

if(isNaN(gocount))

{

alert("请输入合法的数字");

document.getElementById("goCount").value="";

return false;

}

if(parseInt(gocount)<=0|| parseInt(gocount)>)

{

alert("数字溢出");

document.getElementById("goCount").value="";

return false;

}

return true;

}

○ 页次:/

,共:

ID="lblrowscount" runat="server">

CommandArgument="First" CommandName="Pager" Text="首 页">[首 页]

ID="btnPrev" runat="server" CommandArgument="Prev" OnCommand="NavigateToPage"

CommandName="Pager" Text="上一页">[上一页]

runat="server" CommandArgument="Next" OnCommand="NavigateToPage"

CommandName="Pager" Text="下一页">[下一页]

runat="server" CommandArgument="Last" OnCommand="NavigateToPage"

CommandName="Pager" Text="尾 页" >[尾 页]

PagingStyle="Default"

CssClassMouseOver="grid_over" EnableViewState="False"

AutoGenerateColumns="False"

Width="100%" currentLanguage="">

相关阅读:

Oracle中用户管理的不完全恢复简介

重写ViewState的存储目的地,以提高页面性能

一个实现字体大中小方法的JavaScript代码

需要知道的CSS3动画技术

ASP.NET2.0数据库入门之SqlDataSource控件

php 获取完整url地址

jquery里的正则表达式说明

PHP 选项及相关信息函数库

模仿Flash AS效果的导航菜单

用POP3功能收取 Windows Live Hotmail邮件

MySQL 随机密码生成代码

CSS3:background-image可使用多背景图

配置启用Windows 2008脱机文件功能

asp.net用url重写URLReWriter实现任意二级域名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值