zoukankan      html  css  js  c++  java
  • C#中的静态事件

    静态事件是类的事件,而不是实例的事件
    当你有一个存放全局变量和公用方法的类,想在里面添加一个事件的时候,或许会用到"静态事件".
    public delegate void UserListChangedDelegate();

    public class myClass
    {
       
    public event UserListChangedDelegate OnUserListChanged;
       
    private static List<string> _userList;
       
    public static List<string> UserList
       
    {
          
    get{return _userList;}
       }

       
    //往用户列表中添加用户
       public static void AddUser(string user)
       
    {
           _userList.Add(user);
           
    if(myClass.OnUserListChanged!=null)
              OnUserListChanged();
       }

       
    //从用户列表中移除一个用户
       public static void RemoveUser(string user)
       
    {
          _userList.Remove(user);
          
    if(myClass.OnUserListChanged!=null)
             OnUserListChanged();
       }

    }



    public class Test
    {
        Public Test()
        
    {
               
    //绑定事件
               myClass.OnUserListChanged+=new UserListChangedDelegate(UserListChanged);
        }

         
        
    //处理事件
        protected void UserListChanged()
        
    {
            MessageBox.Show(
    "User List Changed!");
        }

    }


    这样每当调用myClass.AddUser() 或者 myClass.RemoveUser()的时候,都会弹出一个对话框
  • 相关阅读:
    JUnit4的使用
    Android中使用JUnit4测试发生fatal error
    计算器的M+是什么意思
    初识Ildasm.exe——IL反编译的实用工具
    jsp下载
    jsp文件上传
    java.sql.SQLException: Io 异常:
    在PowerDesigner中创建物理模型时DBMS选项为空
    oracle10g还原被drop的表
    oracle创建用户
  • 原文地址:https://www.cnblogs.com/xclw/p/1187203.html
Copyright © 2011-2022 走看看