|
■No34363 (キッチン さん) に返信 > ありがとうございました。できました。 > ところで、フォームのコンストラクタの引数を使うのはやめたほうがいい、ということですが、たしかにおっしゃるように、あとから渡したい変数が増える可能性はあります。 > そのようなときには、どのように作っていったらよいのでしょう? >
今回のケースなら、ShowDialog をオーバーロードしてもいい。 引数をクラスにまとめれば、メソッドのシグニチャを変更する手間は省ける。けど、管理は面倒。
あ、最初のコード、こんな感じで。(とか言いながら、ちょっと自信なし。使わないと忘れるなぁ。) public Form2(string PhotoPath) : this() { Photo.Image = Bitmap.FromFile (PhotoPath); }
string ありのコンストラクターを実行する前に、引数なしのコンストラクターを実行する。
ShowDialog をオーバーロードするときも、こんな感じで。 DialogResult ShowDialog(string path) { return ShowDialog(path, 追加の引数のデフォルト値); }
|