读书笔记:《Aspx开发200问》——如果实现动态加载用户空间
(1)创建一个名为UserControlExample.asc的用户控件
(2)创建一个UserControlTest.aspx的页面
<%@ Page language="c#" %>
<HTML>
<HEAD>
<script language="C#" runat="server">
void Page_Load(object sender, System.EventArgs e)
{
Control myControl = Page.LoadControl("UserControlExample3.ascx");
PlaceHolder1.Controls.Add(myControl);
}
</script>
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<P><FONT face="宋体">编程创建用户控件的实例</FONT></P>
<asp:PlaceHolder id="PlaceHolder1" runat="server"></asp:PlaceHolder>
</form>
</body>
</HTML>
<HTML>
<HEAD>
<script language="C#" runat="server">
void Page_Load(object sender, System.EventArgs e)
{
Control myControl = Page.LoadControl("UserControlExample3.ascx");
PlaceHolder1.Controls.Add(myControl);
}
</script>
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<P><FONT face="宋体">编程创建用户控件的实例</FONT></P>
<asp:PlaceHolder id="PlaceHolder1" runat="server"></asp:PlaceHolder>
</form>
</body>
</HTML>
Page.LoadControl()方法的参数是用户控件的虚拟路径,返回值是一个UserControl对象,UserControl对象是由Control类派生,因此可以用Control对象的引用指向LoadControl()方法的返回值
通过PlaceHolder容器控件把用户控件的对象添加进来