前提・実現したいこと
Classの設計で悩んでいます。
WindowsFormのアプリケーションを開発しています。
MenuWindow(一覧)から、複数の子フォームを開きます。
子フォームはそのデータの詳細を表示します。
ModelをPerson(People)として、
該当のソースコード
C#
1namespace PersonModel 2{ 3 public class Person 4 { 5 public string Name { get; set; } 6 public DateTime Birthday { get; set; } 7 public List<Bottle> Bottles = new List<Bottle>(); 8 } 9}
C#
1namespace PersonModel 2{ 3 public class Bottle 4 { 5 string BottleName { get; set; } 6 int BottlePower { get; set; } 7 } 8}
private void OpenChild_Click(object sender, EventArgs e) { Form2 form2 = new Form2(); form2.Show(); }
としてMainWindowからForm2を開きます。 この場合、 (1)子フォームに表示するPerson2は、どこにもつのがよいか? (2)Form2にPerson2をもつとしたら、Person2のInitializeはどこでおこなうのがよいか? (2-1)Form2のコンストラクタ? (2-2)MainWindowのOpenChild_Click
C#
1 private void OpenChild_Click(object sender, EventArgs e) 2 { 3 Form2 form2 = new Form2(); 4 form2.Person2 = new Person(); 5 form2.Person2.Name= "桐生戦兎", 6 form2.Person2.Birthday = new DateTime(1994, 06, 13), 7 form2.Show(); 8 }
###追記
Personのインスタンスはいくつ必要か?->Personは画面と一致しているので約10です。
Personへの入力はどの画面か?->MenuFormとForm2です。基本情報をMenuでいれて、詳細をForm2で入れます。
Personを表示するのはどの画面か?->名前だけはMenuForm、詳細はForm2です。
補足情報(FW/ツールのバージョンなど)
Visual Studio 2015 Pro
Personのインスタンスはいくつ必要か?Personへの入力はどの画面か?Personを表示するのはどの画面か?などの外部仕様を明確にする必要があると思います。
回答2件
あなたの回答
tips
プレビュー