C#メモ ウィンドウサイズの変更に合わせてテキストボックスなどのサイズを自動調整してみる
忘れそうなので、メモしとこうと思って…。
メモの内容はこんなこと。
たとえば、テキストボックスが真ん中に配置してあるウィンドウを作ったとする。
※テキストボックスのMultilineプロパティがTrueになってること前提
デフォルトの設定のままだと、ウィンドウサイズを変更するとテキストボックスの
サイズは変わらない。
テキストボックス自体のサイズをウィンドウサイズの変更に合わせて自動調整するには、
テキストボックスのAnchorプロパティをAllもしくはTop,Bottom,Left,Right全部を指定する。
たとえば、こんなふうにする。
SampleTextBox.Anchor = AnchorStyles.All;
※SampleTextBoxはテキストボックスのクラス名
もしくは、書き方はまぎらわしいけど…、
SampleTextBox.Anchor = (System.Windows.Forms.AnchorStyles) ( System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right );
って具合にTop,Bottom,Left,Rightすべてを指定する。
そうすると、こんなふうになる。
これを応用してSplitContainerにTextBoxを貼って、TextBoxのAnchorプロパティだけ
設定して実行すると「プロパティの値が無効です。」ってメッセージが出た。
せっかく設定したプロパティの値が無視されちゃって困った…。
詳細ボタンをクリックすると、こんなメッセージがでたけど、何が何だか…。
いろいろ調べた結果、SplitContainerのAnchorを同じふうにAllに設定にして解決。
親子関係があるみたいだねぇ。
他のGUIパーツもAnchorプロパティがあるものは同じようにウィンドウサイズに合わせて
サイズを自動調整してくれるみたい。
んまま、そんなこんなで参考になれば良いな。
ディスカッション
コメント一覧
まだ、コメントがありません