asp分页控件实例超详细简单(2)

2018-11-17 20:23

imgBtnPrevPage.Enabled = false;//已经处于首页则上一页按钮不可用 if (this.PageCount != 1)//如果总页数不为1则使下一页按钮可用 {

imgBtnNextPage.Enabled = true; } }

#endregion

#region 上一页按钮事件

///

/// 上一页 ///

///

protected void imgBtnPrevPage_Click(object sender, ImageClickEventArgs e) {

if (this.CurrentPage > 1) {

int PageOrder = this.CurrentPage - 1; if (JudgePageOrder(PageOrder)) {

OnGoToPage(PageOrder); }

if (this.CurrentPage == 1)//如果当前页已经是第一页了,则是上一页按钮不可用 {

imgBtnPrevPage.Enabled = false; }

if (this.CurrentPage != this.PageCount)//如果当前页不等于总页数,则使得下一页按钮可用 {

imgBtnNextPage.Enabled = true; } } else {

ScriptManager.RegisterStartupScript(this, this.GetType(), \, \这已经是第一页了!');\, true); return; } }

#endregion

#region 上一页按钮事件

///

/// 下一页 ///

///

protected void imgBtnNextPage_Click(object sender, ImageClickEventArgs e) {

if (this.CurrentPage < this.PageCount) {

int PageOrder = this.CurrentPage + 1; if (JudgePageOrder(PageOrder)) {

OnGoToPage(PageOrder); }

if (this.CurrentPage == this.PageCount)//如果当前页等于总页数则使得下一页按钮不可用 {

imgBtnNextPage.Enabled = false; }

if (this.CurrentPage != 1)//如果当前页不等于1则使得前一页按钮可用 {

imgBtnPrevPage.Enabled = true; } } else {

ScriptManager.RegisterStartupScript(this, this.GetType(), \, \这已经是最后一页了!');\, true); return; } }

#endregion

#region 尾页按钮事件 ///

/// 尾页 ///

///

protected void imgBtnLastPage_Click(object sender, ImageClickEventArgs e) {

int PageOrder = this.PageCount;

if (JudgePageOrder(PageOrder)) {

OnGoToPage(PageOrder); }

imgBtnNextPage.Enabled = false;//已经处于尾页,使下一页按钮不可用 if (this.PageCount != 1)//如果总页数不等于1,则使得前一页按钮可用 {

imgBtnPrevPage.Enabled = true; } }

#endregion

#region 转到指定页按钮事件 ///

/// 转到指定页 ///

///

protected void imgBtnGoPage_Click(object sender, ImageClickEventArgs e) { try {

if (string.IsNullOrEmpty(txtToPage.Text.Trim())) {

return; }

if (!IsInt(txtToPage.Text.Trim())) {

ScriptManager.RegisterStartupScript(this, this.GetType(),

\请输入整数!');\, true); return; }

if (Convert.ToInt64(txtToPage.Text.Trim()) > PageCount) {

ScriptManager.RegisterStartupScript(this, this.GetType(),

\请输入小于最大页数的整数!');\, true); return; }

if (Convert.ToInt32(txtToPage.Text.Trim()) < 1) {

ScriptManager.RegisterStartupScript(this, this.GetType(),

\请输入大于0的整数!');\, true); return;

\,

\,

\,

}

int page = Convert.ToInt32(txtToPage.Text); int PageOrder = page;

if (JudgePageOrder(PageOrder)) {

OnGoToPage(PageOrder); } } catch {

txtToPage.Text = \; } }

#endregion

大家发现没有,实现imgBtnGoPage_Click事件的时候调用了一个IsInt()方法,这个方法的实现如下:

#region 验证用户输入转到页面的正确性

private bool IsInt(string toPage) {

bool flag = false;

if (string.IsNullOrEmpty(toPage)) return flag; else {

flag = Regex.IsMatch(toPage, @\); }

return flag; } #endregion

好了,再仔细观察代码是不是发现,这几个事件里面都有一段相同的代码:

if (JudgePageOrder(PageOrder))

{

OnGoToPage(PageOrder); }

我来详细的解释一下:

JudgePageOrder(PageOrder)用来判断跳转的页面是否合法(通俗的讲就是有没有超出页面范围): #region 判断PageOrder的合法性 ///

/// 判断PageOrder的合法性 ///

/// /// 是否合法

private bool JudgePageOrder(int PageOrder) {

if (PageOrder < 1) return false;

if (PageOrder > PageCount) return false; return true; }

#endregion

OnGoToPage(PageOrder)就是我们文章开始讲的核心了,是这个asp.net分页控件的核心!在后面

的实例中我会告诉大家如何来用。先把代码罗列给大家:

protected virtual bool OnGoToPage(int gotoPageIndex) {

if (GoPage != null) {

this.CurrentPage = gotoPageIndex;

GoPage(gotoPageIndex);//触发核心事件,来关联数据 }

return true; }

asp.net分页控件已经描述完了,由于个人不擅长讲解,所以请大家包涵。下面继续讲解这个asp.net分页控件的调用的一个实例!

前台代码有两点需要注意: 1.需要注册这个asp.net分页控件。

<%@ Register src=\ tagname=\ tagprefix=\ %> 2.调用的代码是:

完整的代码如下: <%@

Page

Language=\ html

PUBLIC

AutoEventWireup=\ \

XHTML

CodeFile=\ 1.0

Transitional//EN\

Inherits=\ %>

\

<%@ Register Assembly=\Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35\ Namespace=\ TagPrefix=\ %> <%@ Register src=\ tagname=\ tagprefix=\ %>


asp分页控件实例超详细简单(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:会计(2015)第04章 长期股权投资及合营安排 课后作业(下载版)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: