这几天学习了一下自定义分页控件,现将实现方法记录下来,亲测可以实现:
1.首先创建一个.ascx文件,命名为TurnPage,然后在里面写控件前台展示的界面:
2.然后在TurnPage.ascx.cs里面写相应的后台代码,代码如下:
namespace Web { public delegate void GoToPage(int PageNum); public partial class TurnPage : System.Web.UI.UserControl { private GoToPage _GoToPage = null; protected void Page_Load(object sender, EventArgs e) { } public void InitControl(GoToPage GP) { _GoToPage = GP; } public int DataCount { get { return Int32.Parse(lbl_TotalCount.Text); } set { lbl_TotalCount.Text = value.ToString(); } } public int CurrPageNum { get { return Int32.Parse(lbl_CurrPage.Text); } set { lbl_CurrPage.Text = value.ToString(); } } public int TotalPageNum { get { return Int32.Parse(lbl_TotalPage.Text); } set { lbl_TotalPage.Text = value.ToString(); } } public int PageSize { get { return Int32.Parse(ddl_PageSize.SelectedValue); } } protected void btn_FristPage_Click(object sender, EventArgs e) { _GoToPage(1); } protected void btn_PrevPage_Click(object sender, EventArgs e) { if (int.Parse(lbl_CurrPage.Text) > 1) _GoToPage(int.Parse(lbl_CurrPage.Text) - 1); else _GoToPage(1); } protected void btn_NextPage_Click(object sender, EventArgs e) { if (int.Parse(lbl_CurrPage.Text) < int.Parse(lbl_TotalPage.Text)) _GoToPage(int.Parse(lbl_CurrPage.Text) + 1); else _GoToPage(int.Parse(lbl_TotalPage.Text)); } protected void btn_LastPage_Click(object sender, EventArgs e) { _GoToPage(int.Parse(lbl_TotalPage.Text)); } public void ControlButtonClick() { if (DataCount > 0) { btn_FristPage.Enabled = true; btn_PrevPage.Enabled = true; btn_LastPage.Enabled = true; btn_NextPage.Enabled = true; } else { btn_FristPage.Enabled = false; btn_PrevPage.Enabled = false; btn_LastPage.Enabled = false; btn_NextPage.Enabled = false; } if (CurrPageNum == 1) { btn_FristPage.Enabled = false; btn_PrevPage.Enabled = false; } if (CurrPageNum == TotalPageNum) { btn_LastPage.Enabled = false; btn_NextPage.Enabled = false; } if (CurrPageNum == 0) { btn_FristPage.Enabled = false; btn_PrevPage.Enabled = false; btn_LastPage.Enabled = false; btn_NextPage.Enabled = false; } } protected void ddl_PageSize_SelectedIndexChanged(object sender, EventArgs e) { _GoToPage(1); } protected void btn_GO_Click(object sender, EventArgs e) { int pageNum; if (int.TryParse(txt_PageNum.Text, out pageNum)) { if (pageNum > TotalPageNum) _GoToPage(TotalPageNum); else if (pageNum < 1) _GoToPage(1); else _GoToPage(pageNum); } } }}
3.控件的方法就写好了,现在要做的就是在其它页面引用这个控件了,引用方法如下:
然后在页尾还需配置一下:
4.这就是最后一步了,在你引用这个控件的页面的后台代码里写下以下语句:
大功告成了!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持站长技术。
本文将研究 ES6 的 for ... of 循环。 旧方法 在过去,有两种方法可以遍历 javas...
一、正则表达式概述 二、正则表达式在VBScript中的应用 三、正则表达式在VavaScr...
歌词编辑器 歌词编辑器 第一步:选择要播放的歌曲并播放 第二步:填写全部的歌词...
vbs:把一段文字中指定字符颜色变成红色的正则 functionc(Tstr,Word) Dimre Setre...
计算属性computed: 支持缓存,只有依赖数据发生改变,才会重新进行计算 不支持...
一石激起千层浪,继中国区浩浩荡荡的大裁员告一段落之后,甲骨文并未因此收起手...
前言 相信大家都知道在IDE中代码的智能提示几乎都是标配,虽然一些文本编辑器也...
【排序算法】之lowb三人组冒泡、插入、选择 什么是lowb三人组 冒泡排序bubble so...
ADO对象: Connection Command Recordset Record Stream ASP支持的对象很多,可...
微信文件传输助手是微信电脑版与手机微信之间相互传输图片等文件的好工具,但很...