我有一會兒了問題跨線程異常
這一行:
txtPastes.Text = (string)e.UserState;
拋出一個跨線程異常,我沒有找到任何解決辦法
txtPastes
- 文本
GuiUpdate
- BackgroundWorker
lstAllPastes
- 字符串列表
private void GuiUpdate_DoWork(object sender, DoWorkEventArgs e)
{
while (true)
{
while (lstAllPastes.Count == 0) ;
for (int i = 0; i < lstAllPastes[0].Length; i++)
{
GuiUpdate.ReportProgress(0, lstAllPastes[0].Substring(0, i));
Thread.Sleep(1);
}
lstAllPastes.RemoveAt(0);
}
}
private void GuiUpdate_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
txtPastes.Text = (string)e.UserState;
}
private void GuiUpdate_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
}
這是WinForms還是WPF? – Douglas 2012-02-18 16:16:09
您沒有找到任何解決方案?這可能是在GUI應用程序中使用線程時最常見的問題。 – svick 2012-02-18 16:23:40
WinForm ........ – maryum375 2012-02-18 17:02:29