LoginSignup
2
2

More than 5 years have passed since last update.

【WPF】ListBoxのItemの幅がListBoxの幅にならない件について

Posted at

本記事のについて

 WPF初心者が必ず疑問に思い調べるであろうListBoxのItemの幅をきっちりあわせる方法について書いていこうと思います。

HorizontalContentAlignment

取得またはコントロールの内容の水平方向の配置を設定します。(MSDN)

答えを先に書くと

  <ListBox
       HorizontalContentAlignment="Stretch"
       VerticalContentAlignment="Stretch"/>

と書くと自動的にItemの幅をきっちりと合わせてくれます。

button等のコントロールの場合はVerticalContentAlignmentは設定する必要はないです。

VerticalContentAlignment

取得またはコントロールの内容の垂直方向の配置を設定します。(MSDN)

画像やBindingした情報等の幅を設定するにはこちらを設定しなければなりません。

メンバー一覧

メンバー名 説明
Fill 割り当てられた広さを埋めるようにコンテンツのサイズを変更します。 縦横比は維持されません。
None コンテンツの現在のサイズを維持します。
Uniform 割り当てられた広さに収まるようにコンテンツのサイズを変更しますが、元の縦横比が維持されます。
UniformToFill 割り当てられた広さを埋めるようにコンテンツのサイズを変更しますが、元の縦横比が維持されます。 ソース コンテンツの縦横比が対象の四角形の縦横比と異なる場合は、ソース コンテンツが対象の四角形に収まるように切り取られます。

まとめ

ListBoxのItemの幅をListBoxの幅にしようと思ったらHorizontalContentAlignmentとVerticalContentAlignmentをStretchにすれば解決します。できない場合は何かwidthやHeigthを設定している可能性があります。

参考

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2