Op dit moment bouw ik op de volgende manier dynamisch een repeater op zonder paging
Nu krijg ik netjes een lijst met namen op mijn scherm.
Echter wil ik nu paging gaan gebruiken zodat er maar 5 namen per pagina getoond worden.
Dit doe ik middels PagedDataSource
I.p.v.
repeater.DataSource = dt;
verwijs ik nu naar de PagedDataSource
repeater.DataSource = pagedData;
So far so good.
In alle voorbeelden die ik zie gaat het goed omdat in design de <%# Eval("naam") %> gevuld wordt.
Ik bouw dit echter dynamisch op en moet ipv dt.Rows[repeatItem.ItemIndex]["naam"]); de pagedData gaan gebruiken. Ik zie alleen niet hoe. Ik heb ook geprobeerd om dit vanuit de itemdatabound te regelen, maar dit lukt ook niet. of moet ik dt.Rows gaan gebruiken en dan gaan zoeken uit welke row de gegevens getoond moeten gaan worden?
EDIT:
Misschien moet ik dynamisch de Template Class aanmaken
http://msdn.microsoft.com/en-us/library/0e39s2ck.aspx
code:
1
2
3
4
5
6
7
8
9
10
11
12
| DataTable dt = HaalGegevens(); repeater.DataSource = dt; repeater.DataBind(); foreach (RepeaterItem repeatItem in repeater.Items) { RepeaterItem repeaterItemNaam = new RepeaterItem(repeatItem.ItemIndex, ListItemType.Item); Literal lb = new Literal(); lb.ID = "naam"; lb.Text = string.Format("{0}", dt.Rows[repeatItem.ItemIndex]["naam"]); repeaterItemNaam.Controls.Add(lb); repeatItem.Controls.Add(repeaterItemNaam) } |
Nu krijg ik netjes een lijst met namen op mijn scherm.
Echter wil ik nu paging gaan gebruiken zodat er maar 5 namen per pagina getoond worden.
Dit doe ik middels PagedDataSource
code:
1
2
3
4
5
| PagedDataSource pagedData = new PagedDataSource(); pagedData.DataSource = dt.DefaultView; pagedData.AllowPaging = true; pagedData.PageSize = 5; pagedData.CurrentPageIndex = pagenumber; |
I.p.v.
repeater.DataSource = dt;
verwijs ik nu naar de PagedDataSource
repeater.DataSource = pagedData;
So far so good.
In alle voorbeelden die ik zie gaat het goed omdat in design de <%# Eval("naam") %> gevuld wordt.
Ik bouw dit echter dynamisch op en moet ipv dt.Rows[repeatItem.ItemIndex]["naam"]); de pagedData gaan gebruiken. Ik zie alleen niet hoe. Ik heb ook geprobeerd om dit vanuit de itemdatabound te regelen, maar dit lukt ook niet. of moet ik dt.Rows gaan gebruiken en dan gaan zoeken uit welke row de gegevens getoond moeten gaan worden?
EDIT:
Misschien moet ik dynamisch de Template Class aanmaken
http://msdn.microsoft.com/en-us/library/0e39s2ck.aspx
[ Voor 3% gewijzigd door Verwijderd op 26-04-2010 10:49 ]