我想将代码隐藏中的<asp:image>
添加到页面上。我网站上的用户将上传X张图片,我不想在图片上传前添加<asp:images>
。
我想添加<asp:image>
的原因是向用户显示已上传的图片。
如何做到这一点?
我已经看到了占位符控制器的使用,但是当变量不同时如何使用?对于每次上传,图像都应添加到网站上。
答案 0 :(得分:3)
您可以通过创建新的Image对象变量,然后正确分配其属性,然后将图像附加到页面上的现有对象来实现。
Image myImg = new Image();
myImg.ImageUrl = "path_of_the_image.jpg";
myImg.Visible = true;
Panel1.Controls.Add(myImg); //You can attach the image to any control on your page
或类似地:
this.Controls.Add(myImg); //Incase you wanted the image on your page controls
Label1.Controls.Add(myImg); //Incase you wanted the image to appear in a certain label
但是,此对象不会超出您执行的代码的生命周期。这意味着,您将无法在以后与此对象进行交互,因为它是在Page_Init的范围之后定义的。如果你想动态添加这个图像然后能够与它交互,你应该在Page_Init事件期间添加它。