LINQ und Paging mit einer Listenansicht
Frage
Ich habe eine Seite mit einem Listview-Steuerelement und ein Datapager-Steuerelement. Die Listview-Datenquelle wird diesen Code programmatisch mit:
Dim dal as new dalDataContext Dim bookmarks = From data In dal.getData(userid) listview1.DataSource = bookmarks listview1.DataBind()
Wenn ich diese Seite in einem Browser testen kommt es mit dem Fehler auf: ‚Listview mit id‚ListView1‘. Muss eine Datenquelle haben, die entweder ICollection implementiert oder Datenquelle Paging durchführen, wenn AllowPaging wahr ist‘
Wie ich Paging in diesem Szenario umsetzen kann?
Danke
Lösung
Versuchen
listview1.DataSource = bookmarks.ToArray()
Ich hatte das gleiche Problem in dieser Woche.
Andere Tipps
Eine Antwort auf den Klick zweimal Problem, dass der OP anschließend begegnet - die DataBind zum OnPreRender Ereignishandler bewegen:
protected void Page_PreRender(object sender, EventArgs e)
{
listview1.DataBind();
}
oder vielleicht eine Seite Eigenschaften zu verändern und bindlistview schafft es.
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();
}