简单使用委托的几种方法总结

来源:互联网 发布:vb编程 鸡翁一,值钱二 编辑:程序博客网 时间:2024/06/08 19:33

简单使用委托的几种方法总结

Invoke同步BeginInvoke异步





无参数的委托:
          
           this.Invoke(new MethodInvoker(() =>                     {                    事件方法                }));



         或者:


           this.Invoke(new MethodInvoker(delegate            {                事件方法            }));








含参的委托:


       定义:
   
    public delegate int AddHandler(int a, int b);        private int Add(int a, int b)        {            //事件方法            return a + b;        }


        调用:
            AddHandler handler = new AddHandler(Add);            int result = handler.Invoke(1, 2);


含参的异步委托:

        定义:

        //异步日志记录委托        private delegate bool AddDelegate(string userName, int logType, string logDetail, string ip, string provinceName);


        调用:

                AddDelegate dn = new AddDelegate(logBll.AddUserLog);                //0 登陆                 IAsyncResult isr = dn.BeginInvoke(userName, 0, "登录", IpHelper.GetLocalIP(), model.Province, null, dn);                dn.EndInvoke(isr);



0 0
原创粉丝点击