ASP.NET中 PlaceHolder 控件的使用方法
使用PlaceHolder控件可以将空容器控件放到网页中,然后在运行时动态添加、删除或遍历各子元素。该控件只呈现其子元素;它本身并没有基于HTML的输出。
在实际使用过程中可以向PlaceHolder添加任何Html控件,甚至包括JavaScript代码。
将PlaceHolder控件用作存储动态添加到网页的服务器控件的容器。PlaceHolder控件不产生任何可见输出并且只能用作网页上其他控件的容器。可以使用Control.Controls集合添加、插入或移除PlaceHolder控件中的控件。
一、PlaceHolder动态添加控件
前台:
<asp:PlaceHolderID="PlaceHolder1"runat="server"></asp:PlaceHolder>
后台:
ButtonbtnNew=newButton();//声明一个新的按钮 btnNew.Text="新的按钮"; PlaceHolder1.Controls.Add(btnNew);//添加到控件中 LiterallitNewHTML=newLiteral();//添加<br/>或<p>或普通text使用这种方式 litNewHTML.Text="<p>我是一段HTML代码</p>"; PlaceHolder1.Controls.Add(litNewHTML);
二、PlaceHolder动态添加Web用户控件
创建Test.ascx写上代码如下:
<div> 我是Test.ascx控件里的内容 </div>
创建单独的WinForm1.aspx页面:
前台:
<asp:PlaceHolderID="PlaceHolder1"runat="server"></asp:PlaceHolder>
后台:
PlaceHolder1.Controls.Clear();//清除所有控件 Controltest=Page.LoadControl("~/Test.ascx"); PlaceHolder1.Controls.Add(test);