回答編集履歴
1
コード修正
test
CHANGED
@@ -1,15 +1,39 @@
|
|
1
|
-
|
1
|
+
まともにコード書ける環境になったので追記。
|
2
|
+
|
3
|
+
やっていることはfanaさんの回答と全く同じで、処理終了後にモーダル表示したフォームを閉じています。
|
4
|
+
|
5
|
+
表示するフォームに手を加えず、メインフォームだけで完結させる書き方ですね。
|
6
|
+
|
7
|
+
|
2
8
|
|
3
9
|
```C#
|
4
10
|
|
11
|
+
private void button1_Click(object sender, EventArgs e)
|
12
|
+
|
13
|
+
{
|
14
|
+
|
5
|
-
var form = new Form
|
15
|
+
using (var form = new Form())
|
16
|
+
|
17
|
+
{
|
18
|
+
|
19
|
+
Task.Run(() => Hoge()).ContinueWith(_ => form.Invoke((MethodInvoker)(() => form.Close())));
|
20
|
+
|
21
|
+
form.ShowDialog();
|
22
|
+
|
23
|
+
}
|
24
|
+
|
25
|
+
}
|
6
26
|
|
7
27
|
|
8
28
|
|
9
|
-
|
29
|
+
/// <summary>モーダル表示中にする処理</summary>
|
10
30
|
|
31
|
+
private void Hoge()
|
11
32
|
|
33
|
+
{
|
12
34
|
|
13
|
-
|
35
|
+
System.Threading.Thread.Sleep(5000);
|
36
|
+
|
37
|
+
}
|
14
38
|
|
15
39
|
```
|