跨執行緒傳值作業無效的解決方法
1.建立委派傳值
public delegate void ModifyTextBoxDelegate(String s);
private void ModifyTextBox(String s)
{
if (textBox1.InvokeRequired)
{
ModifyTextBoxDelegate d = new ModifyTextBoxDelegate(ModifyTextBox);
this.Invoke(d, s);
}
else
{
textBox1.Text = s;
}
}
2.設定可接受其他Thread傳值
Form.CheckForIllegalCrossThreadCalls = False
方便但是很危險的作法
直接就不檢查是否跨thread來存取UI
沒有留言:
張貼留言