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

War es hilfreich?

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();
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top