用委托在listbox中异步显示信息,解决线程间操作无效,从不是创建控件的线程访问它

     //创建一个委托,是为访问listbox控件服务的。
        public delegate void UpdateTxt(string msg);
        //定义一个委托变量
        public UpdateTxt updateTxt;
        //修改listbox值的方法。
        public void UpdateTxtMethod(string msg)
        {
            listview1.Items.Add(DateTime.Now.ToString()+ msg);
        }
        private void Form1_Load(object sender, EventArgs e)
        {
             //实例化委托
            updateTxt = new UpdateTxt(UpdateTxtMethod);
        
        }    

 //在任意的方法中都可以调用,不用担心“线程间操作无效,从不是创建控件的线程访问它 ”的问题
private
void login() { this.BeginInvoke(updateTxt, "用户登录成功"); }
原文地址:https://www.cnblogs.com/qigege/p/5220294.html