C# winform chart画曲线出现 InvalidOperationException

文档中讲解了C#中在使用多线程跨线程操作时报错“线程间操作无效: 从不是创建控件“…”的线程访问它”的解决办法。

2011年06月27 - 在toolwidow中添加了一个usercontrol,关闭后再点擊增加提示错误:指定的元素已经是另一个元素的逻辑子元素请先将其断开连接。怎么解决试了很久也不行请帮忙。

2011年05月20 - 做 WPF开发的时候使用到了MEF可扩展式的开发 控件加载的时候使用的是Lazy方式。然后通过tableControl展示加载进来的插件每一个TabItem显示一个插件内容。 然后再TabItem的Header位置增加了一个关闭按钮 这样的情况就是,每当打开一个插件后就在后台动态增加一

通常情况下显示界面(如Winform)的笁作是由一个单独的线程完成的,假设它为线程A

此时,如果有另外一个线程假设名为线程B线程B想在线程A的界面中显示一行文本信息,這个时候如果线程B直接调用线程A中的显示控件的方法就有可能会出现InvalidOperationException异常。

Invoke 方法允许同步执行控件上的方法而 BeginInvoke 方法则初始化异步执行。

要使用这些方法必须用与将调用的方法相同的签名声明委托。然后您可以通过向要调用的方法提供适当的委托来调用窗体上任何控件的 Invoke 或 BeginInvoke 方法。任何必需的参数都包装在 Object 中并被传输到该方法。

参考文档: “线程间操作无效: 从不是创建控件“progress1”的线程访问它”

我要回帖

更多关于 C&A 的文章

 

随机推荐