-5
ASP.NET:任何人都可以在Repeater或ListView控件中提供一些C#分頁代碼供我學習。ASP.NET:任何人都可以在Repeater或ListView控件中提供一些C#分頁代碼供我學習
ASP.NET:任何人都可以在Repeater或ListView控件中提供一些C#分頁代碼供我學習。ASP.NET:任何人都可以在Repeater或ListView控件中提供一些C#分頁代碼供我學習
這是我創建的一個尋呼控件,放入GridView的PagerTemplate中。這不是最複雜的東西,但它顯示了一個尋呼機控制如何「看到」它所屬的網格,並使下拉跳轉到特定頁面。
DataPager.ascx
<%@ Control Language="C#" AutoEventWireup="true" EnableViewState="true" CodeFile="DataPager.ascx.cs" Inherits="Resources_Controls_DataPager" %>
<div>
<div style="float:right;">
<asp:ImageButton id="PageFirst"
CommandName="Page"
CommandArgument="First"
runat="server" />
<asp:ImageButton id="PagePrev"
CommandName="Page"
CommandArgument="Prev"
runat="server" />
Page
<asp:DropDownList id="pagesDropDown"
autopostback="true"
OnSelectedIndexChanged="pagesDropDown_SelectedIndexChanged"
runat="server" />
<asp:Label id="pageTotalPages" runat="server" />
<asp:ImageButton ID="PageNext"
CommandName="Page"
CommandArgument="Next"
runat="server" />
<asp:ImageButton ID="PageLast"
CommandName="Page"
CommandArgument="Last"
runat="server" />
</div>
<div style="clear:both;"></div>
</div>
DataPager.ascx.cs
public partial class Resources_Controls_DataPager : System.Web.UI.UserControl
{
#region Property: ParentGrid
public GridView ParentGrid
{
get { return (GridView)Parent.Parent.Parent.Parent; }
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
FillPage();
}
public void FillPage()
{
if (ParentGrid != null && pagesDropDown.Items.Count == 0)
{
pagesDropDown.Items.Clear();
for (int ix = 0; ix < ParentGrid.PageCount; ix++)
{
ListItem item = new ListItem((ix + 1).ToString());
item.Selected = (ix == ParentGrid.PageIndex);
pagesDropDown.Items.Add(item);
}
if (pagesDropDown.Items.Count == 0)
pagesDropDown.Items.Add(new ListItem("0"));
pageTotalPages.Text = String.Format("of {0}", ParentGrid.PageCount);
}
}
protected void pagesDropDown_SelectedIndexChanged(object sender, EventArgs e)
{
ParentGrid.PageIndex = pagesDropDown.SelectedIndex;
}
}
非常感謝。我會測試它。 HOHO ... – 2009-01-07 17:11:29
你知道谷歌?他是一個好朋友。 – 2009-01-07 15:24:04