Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using ItemType for strongly typed repeater control?

Tags:

asp.net

Okay, so I looked up some cool stuff about strongly typed repeater controls... the only issue is that it won't work. I have a List<Entry> that I've bound my repeater to. I just want to display the data. Normally I use ((Entry)(Container.DataItem)), but from what I've read I can just declare the type in the ItemType.

Well... that's what I tried to do, but I get nothing. What am I messing up here?

<asp:Repeater ID="UserRptr" ItemType="HROpenEnrollment.Classes.Entry" runat="server">
    <ItemTemplate>
        <ul class="UserList">
            <li class="CompoundField">
                <%# ???? I can't use Item here. %>
            </li>
        </ul>
    </ItemTemplate>
</asp:Repeater>

I would guess that it's not finding my entry class... how do I get that in there? It's in the same namespace, in a separate folder.

like image 864
proseidon Avatar asked Sep 10 '12 19:09

proseidon


1 Answers

You need to bind data in code behind like below:

using (MicroGOVEntities entities = DataEntitiesFactory.GetInstance())
{
    var getGovernments = from g in entities.S_Government 
                         orderby g.DateCreated descending 
                         select g;
    rpData.DataSource = getGovernments.ToList();
}
rpData.DataBind();

And the ASP.NET code is:

<asp:Repeater ID="rpData" runat="server"
              ItemType="MicroGOV.Entity.S_Government" 
              OnItemCommand="rpData_ItemCommand">
    <ItemTemplate>
        <td><%#:Item.GovernmentID %></td>
    </ItemTemplate>
</asp:Repeater>
like image 189
Wilson Wu Avatar answered Oct 17 '22 02:10

Wilson Wu