为了账号安全,请及时绑定邮箱和手机立即绑定

事件接口

标签:
JavaScript

在开发asp.net过程中,Insus.NET较喜欢写UserControl(用户控件),因为它就是一个灵活的对象。可以在网页随意变换与控制。此次Insus.NET想说的问题,可看如下说明,就比如前一篇《观察者模式与用户控件之间的互动 》,其中UserD与UserC两个用户控件可以交互。这两个用户控件都写了event(事件),delegate(委托)。这部分可以重构一下。把他们写成一个interface(接口),也就是写成一个事件接口。此篇另写例子,让我们学会如何在asp.net开发过程中写事件接口与应用,非以前篇作重构与修改。

5acf072f0001405b00110016.jpgITransmitable using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// Summary description for ITransmitable
/// </summary>

public delegate void TransmitEventHandler(object sender,string value);

public interface ITransmitable
{
    //事件接口
    event TransmitEventHandler Transmit;                 
}

 

两个用户控件分别实作这个接口。UserA,

5acf072f0001405b00110016.jpgView Code using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class UserA : System.Web.UI.UserControl, ITransmitable //实作接口
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    public event TransmitEventHandler Transmit;

    protected void Button1_Click(object sender, EventArgs e)
    {
        if (Transmit != null)
            Transmit(this, this.TextBox1.Text);
        this.TextBox1.Text = string.Empty;
    }   
}

 

UserB用户控件实作接口,

5acf072f0001405b00110016.jpgView Code using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class UserB : System.Web.UI.UserControl, ITransmitable
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    public event TransmitEventHandler Transmit;

    protected void Button1_Click(object sender, EventArgs e)
    {
        if (Transmit != null)
            Transmit(this, this.TextBox1.Text);
        this.TextBox1.Text = string.Empty;
    }   
}

 

 例子演示:


 

Demo代码:

http://download.cnblogs.com/insus/ASPDOTNET/EventInterfaceAndUserControlInteractive.rar

 

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消