首页 > 编程 > .NET > 正文

ASP.NET动态添加用户控件的方法

2024-07-10 13:29:11
字体:
来源:转载
供稿:网友

这篇文章主要介绍了ASP.NET动态添加用户控件的方法,涉及asp.net用户控件的动态创建与使用技巧,需要的朋友可以参考下

本文实例讲述了ASP.NET动态添加用户控件的方法。分享给大家供大家参考。具体实现方法如下:

为了让用户控件能ASP.NET页面实现动态添加,首先写一个接口IGetUCable,这个接口有一个函数,返回对象类型是UserControl.

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Web; 
  5. using System.Web.UI; 
  6. /// <summary> 
  7. /// Summary description for IGetUCable 
  8. /// </summary> 
  9. namespace Insus.NET 
  10. public interface IGetUCable 
  11. UserControl GetUC(); 

有了接口之后,需要创建用户控件Calculator.ascx:

 

 
  1. <%@ Control Language="C#" AutoEventWireup="true" CodeFile="Calculator.ascx.cs" Inherits="Calculator" %> 
  2. Number A: <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <br /> 
  3. + <br /> 
  4. Number B: <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br /> 
  5. <asp:Button ID="ButtonEqual" runat="server" Text="=" 
  6. OnClick="ButtonEqual_Click1" /> 
  7. <br /> 
  8. Result: <asp:Label ID="LabelResult" runat="server" Text=""></asp:Label> 

Calculator.ascx.cs,cs实现接口:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Web; 
  5. using System.Web.UI; 
  6. using System.Web.UI.WebControls; 
  7. using Insus.NET; 
  8. public partial class Calculator : System.Web.UI.UserControl,IGetUCable 
  9. protected void Page_Load(object sender, EventArgs e) 
  10. protected void ButtonEqual_Click1(object sender, EventArgs e) 
  11. decimal a = decimal.Parse(this.TextBox1.Text.Trim()); 
  12. decimal b = decimal.Parse(this.TextBox2.Text.Trim()); 
  13. this.LabelResult.Text = (a + b)。ToString (); 
  14. public UserControl GetUC() 
  15. return this

最后是在需要加载用户控件的aspx的Page_load事件写:

 

 
  1. protected void Page_Load(object sender, EventArgs e) 
  2. IGetUCable uc1 = (IGetUCable)LoadControl("~/Calculator.ascx"); 
  3. this.form1.Controls.Add(uc1.GetUC()); 

希望本文所述对大家的asp.net程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表