0

我在我的 asp.net 项目中使用 radlistview。当我必须获取 radlistview 的所有项目时,它只返回当前页面的项目的问题。

例子 :

radlistview2.Items.ToList();

输出:我只有 10 个元素在第一页

我的问题是:

如何获取 radlistview 中的所有项目???

4

1 回答 1

2

请尝试使用以下代码片段。

ASPX

<telerik:RadListView ID="RadListView1" runat="server" OnNeedDataSource="RadListView1_NeedDataSource" AllowPaging="true" PageSize="2">
            <ItemTemplate>
                <%# Eval("ID") %>
            </ItemTemplate>
        </telerik:RadListView>
        <telerik:RadDataPager ID="RadDataPager1" runat="server" PagedControlID="RadListView1"
            PageSize="2">
            <Fields>
                <telerik:RadDataPagerButtonField FieldType="FirstPrev"></telerik:RadDataPagerButtonField>
                <telerik:RadDataPagerButtonField FieldType="Numeric"></telerik:RadDataPagerButtonField>
                <telerik:RadDataPagerButtonField FieldType="NextLast"></telerik:RadDataPagerButtonField>
            </Fields>
        </telerik:RadDataPager>
        <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />

ASPX.CS

protected void RadListView1_NeedDataSource(object sender, RadListViewNeedDataSourceEventArgs e)
{
    dynamic data1 = new[] {
           new { ID = 1, Name ="Name_1",Customdate = DateTime.Now},
           new { ID = 2, Name = "Name_2",Customdate = DateTime.Now},
           new { ID = 3, Name = "Name_3",Customdate = DateTime.Now},
           new { ID = 4, Name = "Name_4",Customdate = DateTime.Now},
           new { ID = 5, Name = "Name_5",Customdate = DateTime.Now}
       };
    RadListView1.DataSource = data1;
}
protected void Button1_Click(object sender, EventArgs e)
{
    int i = RadListView1.Items.Count();

    RadListView1.AllowPaging = false;
    RadListView1.Rebind();

    int j = RadListView1.Items.Count();
    //Access your count here

    RadListView1.AllowPaging = true;
    RadListView1.Rebind();

}
于 2013-10-03T11:07:58.850 回答