5

我有一个带有 listview 控件和 datapager 控件的页面。使用以下代码以编程方式设置 listviews 数据源:

将 dal 调暗为新的 dalDataContext
暗淡的书签 = 来自 dal.getData(userid) 中的数据
listview1.DataSource = 书签
listview1.DataBind()

当我在浏览器中测试此页面时出现错误:'ListView with id'listview1' 必须有一个数据源,该数据源要么实现 ICollection,要么如果 AllowPaging 为真,则可以执行数据源分页。

在这种情况下如何实现分页?

谢谢

4

3 回答 3

18

尝试

listview1.DataSource = bookmarks.ToArray()

这周我遇到了同样的问题。

于 2009-07-30T16:51:08.550 回答
2

OP 随后遇到的单击两次问题的答案 - 将 Databind 移动到 OnPreRender 事件处理程序:

    protected void Page_PreRender(object sender, EventArgs e)
    {
        listview1.DataBind();
    }
于 2010-10-13T16:12:23.600 回答
0

或者可能在那里创建一个页面属性更改和bindlistview。

protected void lv_PagePropertiesChanging(object sender, PagePropertiesChangingEventArgs e)
{
    //set current page startindex, max rows and rebind to false
    DataPager dp = lvNews.FindControl("lvDataPager1") as DataPager;
    dp.SetPageProperties(e.StartRowIndex, e.MaximumRows, false);

    BindListView();
}
于 2015-01-28T17:09:35.240 回答