質問: new Form2(); f2.Show(); this.Close(); } } ``` ``` フォーム2と仮定 public partial class Form2 : Form { // 最後尾でフォーム1のIF文まで飛ばす処理を書きたいがわからない。} } ``` 私がやりたい事はフォーム1を順序良くよりをしていき、 最後にf2.ShowでForm2に行くのですが、 フォーム2の最後でForm1の途中のIF文まで飛ばしたいです。 自分で書きながら、意味不な質問だと自覚しているのですが、 どうぞよろしくお願いいたします。 もしわからないことがあったら修正しますのでよろしくお願いします。
回答: 何かのメソッドの1つだと仮定して ``` public partial class Form1 : Form{ public void Something() { if (条件) { Form2 f2 = new Form2(this); f2.Show(); this.Close(); } } } ``` Form2でForm1のインスタンスを持つようにすればSomethingを呼べます。 ``` public partial class Form2: Form{ private Form1 form; public Form2(Form1 f){ form = f; } public void AnotherMethod(){ form.Something(); } } ``` 言っている意味が分からなければ、下記キーワードを理解するところから始めてください。 * オブジェクト指向 * クラス * インスタンス * メソッド * メンバー * コンストラクタ これ等は全てC#の解説サイトや参考書であれば**必ず載っているキーワード**です。 反対に言えば、これらを全て知らなければC#のコーディングは出来なくなります。 必ず理解してください。