zoukankan      html  css  js  c++  java
  • 发布事件.net框架程序设计

    class MailManager
        
    {
            
    //在MailManager内部定义MailMsgEventArgs类型
            public class MailMsgEventArgs : EventArgs
            
    {
                
    //传递给事件接受者的类型定义信息
                public MailMsgEventArgs(string from, String to, string subject, string body)
                
    {
                    
    this.form = form;
                    
    this.to = to;
                    
    this.subject = subject;
                    
    this.body = body;
                }


                
    public readonly string form, to, subject, body;
            }


            
    //下面的委托类型定义了接受者必须实现的回调方法原型
            public delegate void MailMsgEventHandler(object sender, MailMsgEventArgs args);

            
    //事件成员
            public event MailMsgEventHandler MailMsg;

            
    //下面的受保护虚方法负责通知时间的登记对象
            protected virtual void OnMailMsg(MailMsgEventArgs e)
            
    {
                
    if (MailMsg != null)
                
    {
                    MailMsg(
    this, e);
                }

            }


            
    //转化为期望的事件,方法调用
            public void SimulateArrivingMsg(string from, string to, string subject, string body)
            
    {
                
    //构造一个对象保存希望传递给通知接受者的信息
                MailMsgEventArgs e = new MailMsgEventArgs(from, to, subject, body);
                
    //调用虚方法通知对象事件已发生
                
    //如果派生类型没有重写该虚方法
                
    //对象将通知所有等级的事件侦听者
                OnMailMsg(e);
            }

        }
  • 相关阅读:
    adb实操
    android默认获取敏感权限
    Android Studio升级到3.4遇到的问题总结
    setOnTouchListener在小米手机中不走ACTION_UP而是走ACTION_CANCEL
    应用中对APK进行安装
    安卓蓝牙开发知识
    一个人开发一个产品,小程序从0到1,第9章 数组
    一个人开发一个产品,小程序从0到1,第8章 字符串
    一个人开发一个产品,小程序从0到1,第7章 数值类型
    一个人开发一个产品,小程序从0到1,第6章 常量变量
  • 原文地址:https://www.cnblogs.com/zwl12549/p/936629.html
Copyright © 2011-2022 走看看