2011年9月5日月曜日

備忘録:WPFレイアウト関係

WPFのレイアウトについて、基礎的なところだけどきちんと確認していなかったので、改めて調べた結果を備忘録として記入。

・HorizontalAlignment, VerticalAlignment.Stretch
コントロールのWidth, Heightが設定されていた場合そちらが優先される。その場合は親の中央に配置される。Stretchを有効にするためにはこれらのプロパティにはDouble.NaN(自動サイズ)を設定すること。

・自動サイズ変更
Stretch以外のAlignmentを設定している場合には、そのコントロール全体(子を含む)が表示される最小限のサイズを上限として自動変更が実行される。たとえば、BのルートがAとして、Bが含む子の中で一番右に配置される子の右端=80の場合、A.Width=60ではB.Width=60となるが、A.Width=100ではB.Width=80となり、残りの20は余白となる。

・配置位置とマージン
マージン以下の座標にコントロールが配置される場合には表示されない。たとえば、左マージンが50の場合に、幅100のコントロールの右座標が120に設定されると、コントロール右部分30~100の部分のみ描画される。

ここに書いてあることは完全に私的な備忘録レベルで文章的にも書き散らしているので、信頼性は申し訳ありませんが保証できません。。。
厳密にリファレンスを読み込んだ結果ではないので、あくまでも一個人意見の参考だと思っていて下さい。

話は変わりますが、現在ソフトウェアキーボードの開発をやっとのことで進めております。
まずは機能をあまり詰め込まずに素直なキーボードを作っています。
完全に普通のキーボードだとつまらないので、少しだけ他のソフトとは異なる機能を盛り込んでいます。
完成したらベクターあたりでの公開を考えていますので、もし興味がありましたら使っていただけると幸いです。

0 件のコメント:

コメントを投稿