asp.net web頁面自定義分頁控件使用詳解
這幾天學(xué)習(xí)了一下自定義分頁控件,現(xiàn)將實(shí)現(xiàn)方法記錄下來,親測(cè)可以實(shí)現(xiàn):

1.首先創(chuàng)建一個(gè).ascx文件,命名為TurnPage,然后在里面寫控件前臺(tái)展示的界面:

2.然后在TurnPage.ascx.cs里面寫相應(yīng)的后臺(tái)代碼,代碼如下:
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.控件的方法就寫好了,現(xiàn)在要做的就是在其它頁面引用這個(gè)控件了,引用方法如下:

然后在頁尾還需配置一下:

4.這就是最后一步了,在你引用這個(gè)控件的頁面的后臺(tái)代碼里寫下以下語句:

大功告成了!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.NET AJAX時(shí)用alert彈出對(duì)話框
ASP.NET AJAX alert彈出對(duì)話框 解決 asp.net onClientClick 與 驗(yàn)證控件沖突問題2008-12-12
asp.net 上傳或下載當(dāng)文件名包含有特殊字符"#"的處理
在上傳或下載文件時(shí),當(dāng)文件名包含有"#"特殊字符時(shí),上傳以后的文件會(huì)被改名字,造成下載也下載不了。2010-03-03
創(chuàng)建第一個(gè)ASP.NET應(yīng)用程序(第1節(jié))
本文通過創(chuàng)建第一個(gè)ASP.NET應(yīng)用程序,了解.net代碼后置技術(shù)以及事件驅(qū)動(dòng)機(jī)制和web頁面設(shè)計(jì)中的基本控件使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-08-08
簡(jiǎn)單談?wù)?NET Core跨平臺(tái)開發(fā)
本文給大家詳細(xì)介紹了如何使用.NET Core進(jìn)行跨平臺(tái)開發(fā),包含簡(jiǎn)單的環(huán)境架設(shè)以及配置,以及使用vs進(jìn)行編譯運(yùn)行項(xiàng)目和注意事項(xiàng),有需要的小伙伴可以參考下2016-07-07
SqlDataReader生成動(dòng)態(tài)Lambda表達(dá)式
這篇文章主要介紹了SqlDataReader生成動(dòng)態(tài)Lambda表達(dá)式,需要的朋友可以參考下2017-04-04

