私はListbox
エキスパンダーアイテムを持っていて、利用可能な水平方向のスペース全体を埋めてほしいと思っています。
ここに小さな例があります
<Window x:Class="ExpanderTest.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<ListBox>
<ListBoxItem>
<Expander Background="Tan"
HorizontalAlignment="Left" Header="My Expander"
ExpandDirection="Down" IsExpanded="True">
<TextBlock TextWrapping="Wrap">
Lorem ipsum dolor sit amet, consectetur
adipisicing elit, sed do eiusmod tempor incididunt ut
labore et dolore magna aliqua
</TextBlock>
</Expander>
</ListBoxItem>
</ListBox>
</Grid>
に設定Width="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ListBox}}, Path=ActualWidth}"
するexpander
と、エキスパンダーの幅が少し広すぎることを除けば、ほぼ希望どおりに動作します。
xamlに、ListBoxItem
またはにExpander
使用可能なすべての水平方向のスペースを埋めるように指示する方法はありますか?
(幅が狭くなると、コンテンツ全体を表示するために、それに応じて高さが大きくなるはずです)