我有下面的List
private List<System.Web.UI.WebControls.Image> _searchResultList = new List<System.Web.UI.WebControls.Image>();此列表可能包含几个具有不同URL的图像。
我有下面的Repeater
<asp:Panel ID="SearchPanel" runat="server" ScrollBars="Vertical">
<asp:Repeater ID="Repeater" runat="server">
<ItemTemplate>
<asp:Image height="32" width="32" runat="server"/>
</ItemTemplate>
</asp:Repeater>
</asp:Panel>使用DataSource显示图像似乎不起作用。
Repeater.DataSource = _searchResultList;
Repeater.DataBind();我做错了什么?
发布于 2016-01-11 13:23:55
_searchResultList不是字符串列表,所以不能使用ImageURL='<%Container.DataItem.ToString()%>'。因为_searchResultList是一个图像列表,所以应该绑定ImageUrl属性。这对你来说应该很好:
<asp:Repeater ID="Repeater" runat="server">
<ItemTemplate>
<asp:Image ID="Image1" height="32" width="32" runat="server" ImageUrl='<%# Eval("ImageUrl") %>' />
</ItemTemplate>
</asp:Repeater>在本例中,Container.DataItem引用Image控件。这就是为什么我们使用Eval("ImageUrl")来获取每个Image控件的ImageUrl属性。
发布于 2016-01-11 12:20:12
<asp:Panel ID="SearchPanel" runat="server" crollBars="Vertical">
<asp:Repeater ID="Repeater" runat="server">
<ItemTemplate>
<asp:Image height="32" width="32" runat="server" ImageURL='<%Container.DataItem.ToString()%>'/>// changes here
</ ItemTemplate>
</asp:Repeater>
</asp:Panel>https://stackoverflow.com/questions/34721236
复制相似问题