teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

修正

2021/08/03 07:35

投稿

_KEY
_KEY

スコア1

title CHANGED
File without changes
body CHANGED
@@ -13,9 +13,7 @@
13
13
  {
14
14
  form2.Show();
15
15
  }
16
-
17
16
  a = true;
18
-
19
17
  }
20
18
 
21
19
  public Boolean A

2

一部コード修正

2021/08/03 07:35

投稿

_KEY
_KEY

スコア1

title CHANGED
File without changes
body CHANGED
@@ -8,6 +8,14 @@
8
8
  private void button1_Click(object sender, EventArgs e)
9
9
  {
10
10
  Form2 form2 = new Form2();
11
+
12
+ if (!a)
13
+ {
14
+ form2.Show();
15
+ }
16
+
17
+ a = true;
18
+
11
19
  }
12
20
 
13
21
  public Boolean A
@@ -25,4 +33,5 @@
25
33
  Form1 form1 = new Form1();
26
34
  form1.A = false;
27
35
  }
36
+
28
37
  ```

1

コード追加しました

2021/08/03 07:33

投稿

_KEY
_KEY

スコア1

title CHANGED
File without changes
body CHANGED
@@ -1,2 +1,28 @@
1
1
  ### **WindowsForm(C#)について質問です。**
2
- **サブフォームからメインフォームに値を渡す**やり方を調べていたところ、サブフォームからメインフォームへ情報を受け渡す場合、サブフォームはメインフォームのインスタンスを保持していない為、メインフォームのインスタンスをサブフォームの変数に渡さなければならないという記事を見つけたのですが、**staticでメインフォームの変数を静的**にしてもサブフォームから値を渡すことができたので、後者のやりかたでやっても問題ないのでしょうか?
2
+ **サブフォームからメインフォームに値を渡す**やり方を調べていたところ、サブフォームからメインフォームへ情報を受け渡す場合、サブフォームはメインフォームのインスタンスを保持していない為、メインフォームのインスタンスをサブフォームの変数に渡さなければならないという記事を見つけたのですが、**staticでメインフォームの変数を静的**にしてもサブフォームから値を渡すことができたので、後者のやりかたでやっても問題ないのでしょうか?
3
+ ```C#
4
+ public partial class Form1 : Form
5
+ {
6
+ private static Boolean a;
7
+
8
+ private void button1_Click(object sender, EventArgs e)
9
+ {
10
+ Form2 form2 = new Form2();
11
+ }
12
+
13
+ public Boolean A
14
+ {
15
+ get { return a; }
16
+ set { a = value; }
17
+ }
18
+
19
+
20
+
21
+ public partial class Form2 : Form
22
+ {
23
+ private void button1_Click(object sender, EventArgs e)
24
+ {
25
+ Form1 form1 = new Form1();
26
+ form1.A = false;
27
+ }
28
+ ```