私の Winform では、ボタンのクリック時にファイルの読み取りメソッドが実装されています。大きなファイルが読み取られると、ループが終了するまで Ui がハングします。常に UI を制御する必要があります。
私はそれが以前に行われたことを知っており、いくつか試してみましたが、このようなフォームコントロールを使用しようとすると、まだエラーが発生しています:(翻訳済み!)
制御要素comboBox1のアクセスは、それが作成されたスレッドではなく、別のスレッドからのものです!!!
private void button1_Click(object sender, EventArgs e)
{
//some code
using (StreamReader sr = new StreamReader(file, System.Text.Encoding.ASCII))
{
while (sr.EndOfStream == false)
{
line = sr.ReadLine();
UpdateProgressBar(line.Length);
}
}
//some code
}