[英]How to get this DataList with the paging property?
我是ASP.NET的新開發人員,並且正在開發基於Web的應用程序,其中有一個DataList,並且需要具有分頁功能。 我遵循了CodeProject在這篇文章中所解釋的內容,但是它對我不起作用,並且出現了我無法理解的錯誤。
錯誤:
名稱“ CurrentPage”在當前上下文中不存在。
那么如何解決此錯誤並在此DataList中獲得分頁功能?
ASP.NET代碼:
<tr>
<td width="100%">
<asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource2" >
<ItemTemplate>
<asp:HyperLink
ID="HyperLink1" runat="server" NavigateUrl='<%# "StartQuiz.aspx?testid=" + Eval("QuizID") %>'
Text='<%# Eval("Title") %>'></asp:HyperLink><br />
<asp:Label
ID="DescriptionLabel" runat="server" CssClass="generaltext" Text='<%# Eval("Description") %>'></asp:Label> <br />
<br />
</ItemTemplate>
</asp:DataList>
<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:testConnectionString %>"
SelectCommand="SELECT [Title], [Description], [QuizID],[IsSent] FROM [Quiz] where [IsSent]=1 order by [QuizID] DESC">
</asp:SqlDataSource>
</td>
</tr>
<tr>
<td>
<asp:Label ID="lblCurrentPage" runat="server" Visible="true"></asp:Label>
</td>
</tr>
<tr>
<td align="center">
<asp:Button ID="cmdPrev" runat="server" Text=" << " OnClick="cmdPrev_Click" />
<asp:Button ID="cmdNext" runat="server" Text=" >> " OnClick="cmdNext_Click" />
</td>
</tr>
代碼隱藏:
protected void items()
{
PagedDataSource objDs = new PagedDataSource();
DataView dv = (DataView)SqlDataSource2.Select(DataSourceSelectArguments.Empty);
objDs.DataSource = dv;
objDs.AllowPaging = true;
objDs.PageSize = 5;
objDs.CurrentPageIndex = CurrentPage;
lblCurrentPage.Text = "Page:" + (CurrentPage + 1).ToString() + " Of " + objDs.PageCount.ToString();
cmdPrev.Enabled = !objDs.IsFirstPage;
cmdNext.Enabled = !objDs.IsLastPage;
DataList1.DataSource = objDs;
DataList1.DataBind();
}
protected void cmdPrev_Click(object sender, EventArgs e)
{
try
{
CurrentPage -= 1;
items();
}
catch (Exception ex)
{
Logger.LogException(ex);
}
}
protected void cmdNext_Click(object sender, EventArgs e)
{
try
{
CurrentPage += 1;
items();
}
catch (Exception ex)
{
Logger.LogException(ex);
}
}
我認為在您的情況下聲明“ CurrentPage變量位於所有內容的頂部”,應為int CurrentPage = 1;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.