我想在我的aspx代码中创建动态数量的asp:image
标记。
我该怎么办?
我在response.write
内使用for循环尝试<%%>
,但它无法正常工作。
还有其他想法吗?它也应该在服务器上运行。
答案 0 :(得分:0)
你在找这个吗?
Label myLabel = new Label();
myLabel.Text = "Sample Label";
Panel Panel1= new Panel();
Panel1.Controls.Add(myLabel);
在循环中添加它将动态生成控件
答案 1 :(得分:0)
您 CAN 使用内联标记执行此操作:
<% for(int i=0;i<10;i++) {%>
<img src="whatever.jpg" alt="" />
<%}%>
这将生成10张whatever.jpg的图像。
你不能做的一件事是将ASP控件放在内联块中:<%...%> no ASP controls here <%...%>
。
{%>
和<%}%>
之间应该只是纯HTML控件或文本,没有服务器控件。
如果您必须使用服务器控件,那么您可以在代码隐藏中进行for循环。假设您在标记中添加了<asp:Placeholder ID="my_placeholder" runat="server"></asp:Placeholder>
,您可以在代码隐藏中执行此操作:
for(int i=0;i<10;i++) {
Image img = new Image();
img.Src = "whatever.jpg";
this.my_placeholder.Controls.Add(img);
}