从不是UI线程去调用UI线程上的控件的解决方法:
1.在winForm中,控件.CheckForIllegalCrossThreadCalls = false; //关闭跨线程访问控件的检
查
2.在WPF中,没有CheckForIllegalCrossThreadCalls属性。
使用委托:
a. TextBox控件:textBox1.Dispatcher.Invoke(new Action(() => { textBox1.AppendText
(msg+"\r\n"); }));
b. ListBox控件:listBox1.Dispatcher.Invoke(new Action(() => { listBox1.Items.Add
(msg); }));
调用textBox1.Dispatcher.Invoke(new Action(() => { textBox1.AppendText(msg+"\r\n"); }));
是什么意思?关键是括号里内容 |