我正在构建一个网站,我需要根据用户请求调用WebUserControls(.ascx),我该如何实现?这甚至可能吗?
示例:
protected void userclick_click(object sender, EventArgs e)
{
if(textbox1.Text == "2")
{
call WebUserControl1.ascx
}
else
{
/*do nothing*/
}
}
我正在使用C#。
提前谢谢。
答案 0 :(得分:0)
您可以调用它并将其附加到PlaceHolder
。请查看http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.placeholder.aspx以了解控件的详细信息。
让你在运行时用你喜欢的任何东西填充PlaceHolder。这样做的好处是它允许你在设计时将PlaceHolder放在你想要的任何地方而不只是将它添加到Page.Controls列表中。
protected void userclick_click(object sender, EventArgs e)
{
if(textbox1.Text == "2")
{
WebUserControl1 uc = (WebUserControl1) Page.LoadControl("WebUserControl1.ascx");
PlaceHolder1.Controls.Add(uc);
}
else
{
/*do nothing*/
}
}
答案 1 :(得分:0)
protected void userclick_click(object sender, EventArgs e)
{
if(textbox1.Text == "2")
{
Control c1 = LoadControl("MyUserControl.ascx");
//page or whatever control you want to add to
Page.Controls.Add(c1);
}
else
{
/*do nothing*/
}
}