エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
Control.Invoke() と Control.BeginInvoke() での例外処理 - (。・ω・。)ノ・☆':*;':*
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Control.Invoke() と Control.BeginInvoke() での例外処理 - (。・ω・。)ノ・☆':*;':*
はじめに C#のWinForms*1はUIスレッドを一つしか持てず*2、そのUIスレッドに対して他のスレッドからちょ... はじめに C#のWinForms*1はUIスレッドを一つしか持てず*2、そのUIスレッドに対して他のスレッドからちょっかいをかけようとするとSystem.InvalidOperationException例外が飛びます。 private void button1_Click(object sender, EventArgs e) { textBox1.Text = "[開始]"; Task.Factory.StartNew(() => { Thread.Sleep(5000); textBox1.Text += "[5秒経ったよ!]"; // ここで例外が発生する }); } そこで、Control.InvokeないしControl.BeginInvokeを使ってUIスレッドに該当の処理をさせなさい、というのは有名な話。 今回はControl.Invokeを使ってハマった話。 MSDNなど