リストボックスのSelectedIndex
がBackgroundWorker
の最後のインデックスにあるかどうかをチェックする必要がありますが、リストボックス(GUIスレッド上にあります)をチェックしているので、 BackgroundWorker
から私はこのエラーを取得する:Listbox.SelectedIndex == listbox.Items.Count from BackgroundWorker
System.InvalidOperationException: 'Cross-thread operation not valid: Control 'listBox1' accessed from a thread other than the thread it was created on.'
は、これは私のコードです:
if (listBox1.SelectedIndex == listBox1.Items.Count)
{
//code here
}
は、どのように私はGUIのスレッドにすることなく、声明の仕事なら、これを作ることができますか?
いいえ、1つは 'CheckForIllegalCrossThreadCalls'を' false'に設定しないでください。間違ったスレッドからのコントロールを使用すると必然的に発生する問題を見つけるのが遅れるだけです。 –
ありがとう、これは私が探していたものです。私が家に帰るときにそれを試してみよう! – Thomas
さて、私はそれが動作する場合は、あなたが答えて、あなたの質問に答える場合はそれを受け入れることができます知って、感謝! @トーマス –