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


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

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

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    /// <summary>
    /// Summary description for IGetUCable
    /// </summary>
    namespace Insus.NET
    {
    public interface IGetUCable
    {
     UserControl GetUC();
    }
    }
    有了接口之后,需要创建用户控件Calculator.ascx:
    <%@ Control Language="C#" AutoEventWireup="true" CodeFile="Calculator.ascx.cs" Inherits="Calculator" %>
    Number A: <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <br />
    + <br />
    Number B: <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br />
    <asp:Button ID="ButtonEqual" runat="server" Text="="
    OnClick="ButtonEqual_Click1" />
    <br />
    Result: <asp:Label ID="LabelResult" runat="server" Text=""></asp:Label>
    Calculator.ascx.cs,cs实现接口:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using Insus.NET;
    public partial class Calculator : System.Web.UI.UserControl,IGetUCable
    {
     protected void Page_Load(object sender, EventArgs e)
     {
     }
     protected void ButtonEqual_Click1(object sender, EventArgs e)
     {
     decimal a = decimal.Parse(this.TextBox1.Text.Trim());
     decimal b = decimal.Parse(this.TextBox2.Text.Trim());
     this.LabelResult.Text = (a + b)。ToString ();
     }
     public UserControl GetUC()
     {
     return this;
     }
    }
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using Insus.NET;
    public partial class Calculator : System.Web.UI.UserControl,IGetUCable
    {
     protected void Page_Load(object sender, EventArgs e)
     {
     }
     protected void ButtonEqual_Click1(object sender, EventArgs e)
     {
     decimal a = decimal.Parse(this.TextBox1.Text.Trim());
     decimal b = decimal.Parse(this.TextBox2.Text.Trim());
     this.LabelResult.Text = (a + b)。ToString ();
     }
     public UserControl GetUC()
     {
     return this;
     }
    }
    最后是在需要加载用户控件的aspx的Page_load事件写:
    protected void Page_Load(object sender, EventArgs e)
    {
     IGetUCable uc1 = (IGetUCable)LoadControl("~/Calculator.ascx");
     this.form1.Controls.Add(uc1.GetUC());
    }
  • 相关阅读:
    字典的增删改查
    列表的增删改查 and 元祖
    基础数据类型
    python初始1
    python初始
    android APP 中微信分享功能实现 的总结
    android ADT 版本过低的解决办法
    android 布局: LinearLayout如何使TextView中的内容居中显示
    android获取项目下的一张图片的绝对路径问题以及解决方法
    android 4高级编程(第三版)
  • 原文地址:https://www.cnblogs.com/sjqq/p/6376993.html
Copyright © 2020-2023  润新知