リストボックスの各行で、幅が固定幅に設定されていて、テキストが幅より長い場合に、ワードラップ付きのテキストを表示できるようにします。
たとえば、「これは長い文字列です。」は1行で表示されますが、「これは長い文字列です。これは長い文字列です。これは長い文字列です。」リストボックス内の1つの項目であるため、3行で表示できます。
したがって、リストボックスの各行の高さは、コンテキストによって異なる場合があります。
この場合の単純なスタイルを作成するにはどうすればよいですか?
リストボックスの各行で、幅が固定幅に設定されていて、テキストが幅より長い場合に、ワードラップ付きのテキストを表示できるようにします。
たとえば、「これは長い文字列です。」は1行で表示されますが、「これは長い文字列です。これは長い文字列です。これは長い文字列です。」リストボックス内の1つの項目であるため、3行で表示できます。
したがって、リストボックスの各行の高さは、コンテキストによって異なる場合があります。
この場合の単純なスタイルを作成するにはどうすればよいですか?
これを行うには、ItemsTemplateを変更します
<ListBox ItemsSource="{Binding YourItems}">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding TextProperty}" TextWrapping="Wrap"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
これは、ビューモデルにIEnumerableである「YourItems」プロパティがあり、YourObjectに文字列であるTextPropertyプロパティがあることを前提としています。