asp:image
aspx コードで動的な量のタグを作成したいと考えています。
どうすればできますか?response.write
内部で for ループを試してみ<%%>
ましたが、うまくいきませんでした。他のアイデアはありますか?また、サーバーで実行する必要があります。
これを探していますか?
Label myLabel = new Label();
myLabel.Text = "Sample Label";
Panel Panel1= new Panel();
Panel1.Controls.Add(myLabel);
これをループに追加すると、コントロールが動的に生成されます
インラインマークアップでそれを行うことができます:
<% for(int i=0;i<10;i++) {%>
<img src="whatever.jpg" alt="" />
<%}%>
これにより、whatever.jpg の 10 個の画像が生成されます。できないことの 1 つは、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);
}