[C#] Repeater icm PagedDataSource

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Op dit moment bouw ik op de volgende manier dynamisch een repeater op zonder paging

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 ]


Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Je moet die rijen niet op die manier aanspreken daar. Lees je eens in op databinding.
En daarnaast moet je ook gewoon het template in je aspx/ascx file gooien. Iets dat je ook leert als je je inleest op databinding.

[ Voor 43% gewijzigd door Grijze Vos op 26-04-2010 11:42 ]

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info