■9828 / ) |
Re[1]: 別のフォームへアクセスして値を取得するには? |
□投稿者/ はつね (322回)-(2007/11/05(Mon) 18:32:14)
|
■No9824 (くまこ さん) に返信 > Form1からForm2上のテキストボックスの値を取得したい場合、 > たとえばVB.NETでは、 > > My.Forms.Form2.TextBox1.Text > > とすれば取得できるようですが、C#ではどの様にやるのでしょうか? > > この様に簡単に取得する方法はなく、インスタンスを作って云々...という手法しか無いのでしょうか?
VB.NETでも上記の方法ではなく、明示的にインスタンスを作って云々...という手法で行って下さい。 明示的にというように上記の方法でも裏でインスタンスを作って云々...が行われていますが、そのインスタンスが明示的に管理できないためForm2を意図しないタイミングでつかっていてインスタンスが消えないなどという事が発生する原因になります。
また、別フォームのコントロールを直接使うのではなく、別フォームにPublicプロパティなどを用意してそこを経由して設定してあげる事で、Form2でのコントロールの変更の影響をForm1に与えなくて済むようなつくりも実現できます。
|
|