• 締切済み

デザイン時のVisible=Falseは実行時に変更できない?

VB2008です。 フォームデザイン時に、コントロールのVisibleをFalseに設定していると、実行時にTrueに設定してもコントロールが見えません。(実行時エラーも出ません。) 私の環境では、ほぼすべてのコントロールが同じ挙動をします。 もちろん、デザイン時にVisibleをTrueにしておいて、実行時にコードでFalseにすると見えなくなりますし、Trueを与えてやると再度見えるようになります。 これは、言語の仕様なのでしょうか。

みんなの回答

回答No.1

2008は使ったこと無いけど、…Visibleは「いつ」変更してますか? FormのLoadイベントなんかだと、Loadイベントの処理が「終了した直後」に Formが初期化されるので、Load中に変更を加えようとしても無駄になりますよ。 (たぶん、New(コンストラクタ?)でやっても同じ事だと思います) もし そうであれば、 ・FormのShownイベントに記述する ・Loadイベント中でMe.Showを実行し、その後でVisibleを変更 のいずれかで変更可能かと思います。 的外れだったらすみません。

xiaolong_goo
質問者

お礼

お返事ありがとうございます。 Load中の変更は無駄ということは、言語の仕様ということですね。 Shownなどで検討してみます。