DotNet2.0不允许线程互操作各控件的解决方法。

Posted 软若石

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DotNet2.0不允许线程互操作各控件的解决方法。相关的知识,希望对你有一定的参考价值。


        首先定义一个委托:

delegate void AgentInfo(string ip, string agentName); 

 

 

在需要的地主通过委拖还设置另一个线程的信息。


            AgentInfo ai = new AgentInfo(ShowAgentInfo);
            this.Invoke(ai, ip, agentName);

 

 

 
        /// <summary>
        /// 设置座席连接信息
        /// </summary>
        /// <param name="ip"></param>
        /// <param name="agentName"></param>
        private void ShowAgentInfo(string ip, string agentName)
        {
            ListViewItem myItem = new ListViewItem(ip);
            myItem.SubItems.Add(agentName);
            myItem.SubItems.Add(DateTime.Now.ToString());
            //myItem.
            listAgent.Items.Add(myItem);
        }

以上是关于DotNet2.0不允许线程互操作各控件的解决方法。的主要内容,如果未能解决你的问题,请参考以下文章

线程间操作无效:从不是创建控件的线程访问它的三种方法

WinForm 中如何使用后台线程来操作UI

实现Winform 跨线程安全访问UI控件

线程间操作无效: 从不是创建控件的线程访问它的三种方法

Android 线程交互

如何通过 COM 互操作在 .NET 对象上调用静态方法?