7

文字列の単純なリストをリピーターにバインドするにはどうすればよいですか?

Protected Sub Page_Load(sender As Object, e As System.EventArgs)

    'create sample data:
    Dim photos As New List(Of String)
    photos.Add("large1.jpeg")
    photos.Add("large2.jpeg")
    photos.Add("large3.jpeg")
    photos.Add("large4.jpeg")
    photos.Add("large5.jpeg")

    'bind data:
    Repeater1.DataSource = photos
    Repeater1.DataBind()

End Sub

HTML は次のとおりです。

        <asp:Repeater ID="Repeater1" runat="server" ClientIDMode="Predictable">
            <HeaderTemplate><ul></HeaderTemplate>
            <FooterTemplate></ul></FooterTemplate>
            <SeparatorTemplate>
                <li>
                    <asp:Image ID="img_photo" runat="server" ImageUrl="<%# Container.DataItem %>" /></li>
            </SeparatorTemplate>
        </asp:Repeater>

Container.DataItem の値は常に空です。

何か案は?

4

1 に答える 1

5

に変更<SeparatorTemplate>する<ItemTemplate>と、動作するはずです!

SeparatorTemplate には DataItem がありません。セパレーターは 2 つのアイテムの間にあり、常に n-1 のセパレーターがあるため、データバインディングが機能した場合、最後のアイテムは常に未使用のままになります。

于 2012-07-25T14:23:14.763 に答える