3

私は新しいスレッドを開始しています:

Thread t = new Thread(UpdateListOutput);    
t.IsBackground = true;    
t.Start();

UpdateListOutput:

void UpdateListOutput()
{
    while (true)
    {
        if (!string.IsNullOrEmpty(engineOutput))
        {
            OutputBox.Items.Add(engineOutput);
        }
    }
}

そして、私はエラーを受け取ります:

クロススレッド操作が無効です: コントロール 'OutputBox' は、それが作成されたスレッド以外のスレッドからアクセスされました。

どうすればこれを実行できますか?

4

3 に答える 3

16

これを試して

this.Invoke((MethodInvoker)(() => OutputBox.Items.Add(engineOutput)));
于 2013-08-30T13:47:38.233 に答える