如何实现动态加载用户控件

1.编程创建用户控件示例
(1)创建一个简单的用户控件
创建一个名为UserControlExample.ascx的用户控件,代码如下:
<%@ Control Language="c#" AutoEventWireup="false" %>
<script language="C#" runat="server">
  void EnterBtn_Click(Object Sender, EventArgs E)
  {
   Label1.Text = "嗨 " + Name.Text + " ,欢迎来到ASP.NET!";
  }
</script>
<H3>
 <u>一个简单的用户控件</u>
</H3>
输入名字:
<asp:textbox id="Name" 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");
    PlaceHolder1.Controls.Add(myControl);
    通过PlaceHolder容器控件把用户控件的对象添加进来,完成动态加载用户控件的过程。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值