Placeholder Web 服务器控件使您可以将空容器控件放置到页内,然后在运行时动态添加、删除或依次通过子元素。该控件只呈现其子元素;它不呈现自身的任何标记。(转)
Posted on 2008-08-29 14:58 Ran 阅读(339) 评论(0) 收藏 举报Placeholder Web 服务器控件使您可以将空容器控件放置到页内,然后在运行时动态添加、删除或依次通过子元素。该控件只呈现其子元素;它不呈现自身的任何标记。
例如,您可能想要根据用户选择的选项,在网页上显示数目可变的按钮。在该情况下,用户不面对可能导致混乱的选择,即那些要么不可用、要么与其自身需要无关的选择。可以动态创建按钮,并将它们添加为 PlaceHolder 控件的子级。
例1:
C#
<head runat="server">
<script runat="server">
void Page_load(object sender, EventArgs e)
{
HtmlButton myButton = new HtmlButton();
PlaceHolder1.Controls.Clear();
myButton.InnerHtml = "Button 1";
PlaceHolder1.Controls.Add(myButton);
myButton = new HtmlButton();
myButton.InnerHtml = "Button 2";
PlaceHolder1.Controls.Add(myButton);
myButton = new HtmlButton();
myButton.InnerHtml = "Button 3";
PlaceHolder1.Controls.Add(myButton);
myButton = new HtmlButton();
myButton.InnerText = "Button 4<>";
PlaceHolder1.Controls.Add(myButton);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:PlaceHolder ID="PlaceHolder1" runat="server" EnableTheming="true" ></asp:PlaceHolder>
</form>
</body>
例2:
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!IsPostBack)
{
this.AddControlToPlaceHolder();
}
}
private void AddControlToPlaceHolder()
{
PlaceHolder1.Controls.Clear();
for (int i = 1; i < 6; i++)
{
TextBox txt1 = new TextBox();
txt1.Text = i.ToString();
PlaceHolder1.Controls.Add(txt1);
PlaceHolder1.Controls.Add(new LiteralControl("<br>"));
}
}
浙公网安备 33010602011771号