我希望有人可以帮助我。这是一个非常新手的问题,我很害怕。我在转发器中有一个图像,我想根据传递给它的参数更改其IMAGEURL。
<asp:Repeater ID="Repeater" runat="server">
<HeaderTemplate>
<asp:Image ID="imgType" runat="server" />
</HeaderTemplate>
<ItemTemplate>
<%# Eval("DisplayName")%>
</ItemTemplate>
<SeparatorTemplate>
<hr />
</SeparatorTemplate>
</asp:Repeater>
后面的代码中有一个SWITCH语句正在改变IMAGEURL,具体取决于传递给它的内容。但是,不可避免地,SWITCH语句不能看到图像ID(“imgType”)(大概是因为它在REPEATER中)。
非常感谢任何有关实施此方法的最佳方法的建议。
对不起这样的新手问题。
答案 0 :(得分:2)
您可以使用look here获取有关在转发器页眉和页脚中查找控件的信息,但这应该总结一下:
// Get control from <HeaderTemplate>
Image imgTypeControl = (Image)myRepeater.Controls[0].Controls[0].FindControl("imgType");
// Get control from <FooterTemplate>
Image imgTypeControl = (Image)myRepeater.Controls[myRepeater-Controls.Count - 1].Controls[0].FindControl("imgType");