其他信息: 线程间操作无效: 从不是创建控件“控件名”的线程访问它。
生活随笔
收集整理的這篇文章主要介紹了
其他信息: 线程间操作无效: 从不是创建控件“控件名”的线程访问它。
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在多線程程序中,新創建的線程不能訪問UI線程創建的窗口控件,如果需要訪問窗口中的控件,有以下解決辦法
1.可以在窗口構造函數中將CheckForIllegalCrossThreadCalls設置為 false
public Form1() {InitializeComponent();CheckForIllegalCrossThreadCalls = false; }2.使用委托調用
聲明委托:
private delegate void MyDelegateUI();使用委托在多線程中執行:
MyDelegateUI d = delegate{this.stateLabel.Text = "正在讀取目標文件"; }; this.stateLabel.Invoke(d);這就是多線程界面元素操作的2種解決方法。
總結
以上是生活随笔為你收集整理的其他信息: 线程间操作无效: 从不是创建控件“控件名”的线程访问它。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么会出现人口负增长?
- 下一篇: spy++使用指南