【发布时间】:2012-03-20 03:28:12
【问题描述】:
在我正在处理的一个项目中,我有许多
我过去曾尝试过,但似乎无法定位父页面中的 PagedControlID。
这是我到目前为止所得到的。任何帮助将不胜感激。
.aspx 页面
<abc:Pagination ID="uxPagination" ListControlID="uxEventListView" runat="server" />
.ascx 分页控件
<asp:DataPager ID="uxDataPager" PageSize="1" runat="server" />
.ascx.cs 分页控件
public partial class ABC_UserControls_Pagination : System.Web.UI.UserControl
{
private string listControlID;
public string ListControlID
{
get { return listControlID; }
set { listControlID = value; }
}
protected void Page_Load(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(ListControlID))
{
uxDataPager.PagedControlID = ListControlID;
}
}
}
【问题讨论】:
-
DataPager不是已经是启用分页的可重用控件吗? -
你是对的,它是。但我计划向 DataPager 控件添加更多逻辑以使其更具自定义性,因此我想采用 DRY 方法并将其分解,这样我就不会在整个网站上出现重复的代码。
-
您是否考虑过使用您想要的任何自定义逻辑来扩展 DataPager,然后在所有页面上使用该控件?
-
这是个好主意。但是,我能够解决这个问题。由于我无法回答,我将发布指向 PasteBin 的链接。我在 asp:DataPager - pastebin.com/Kn6Asrks 中添加了一个 OnInit 事件
-
为什么不创建一个包含 ListView 和 DataPager 的 Web 用户控件?
标签: c# asp.net .net user-controls pagination