如何实现动态加载用户控件
1个回答
展开全部
1.编程创建用户控件示例
(1)创建一个简单的用户控件
创建一个名为UserControlExample.ascx的用户控件,代码如下:
<%@ Control Language="c#" AutoEventWireup="false" %>
<script language="C#" runat="server">
<asp:button Text="Enter" OnClick="EnterBtn_Click" runat="server" ID="Button1" /><br><br><asp:label id="Label1" runat="server" />(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("UserControlExample.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>2.代码分析
看UserControlTest.aspx页面代码。Page.LoadControl()方法的参数是用户控件的虚拟路径,返回值是一个UserControl对象,UserControl对象是由Control类派生,因此可以用Control对象的引用指向LoadControl()方法的返回值。
Control myControl = Page.LoadControl("UserControlExample.ascx");
通过PlaceHolder容器控件把用户控件的对象添加进来,完成动态加载用户控件的过程。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询