如何使 TextBlock 在 ListBox 中水平调整大小
How to make a TextBlock resize horizontally in a LsitBox
我有一个 window 和一个 ListBox
在模板中包含 TextBlock
s:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
...
<ListBox x:Name="AnnotationsList" ScrollViewer.VerticalScrollBarVisibility="Visible" Grid.Row="1" Grid.ColumnSpan="3">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="20*"/>
</Grid.ColumnDefinitions>
<Label Content="{Binding DateAdded}" Grid.Column="0"/>
<TextBlock Text="{Binding Description}" TextWrapping="Wrap" Grid.Column="1"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
我希望 TextBlock
调整大小,模板中的两个元素以 1/20 的比例填充宽度。
相反,TextBlock
永远不会变小,ListBox
会得到一个水平滚动条。
如果我调整 window 的大小,如何保持列表可垂直滚动并确保文本变窄并换行?
正如 Clemens 在评论中回答的那样,HorizontalScrollBarVisibility
有一个选项 Disabled
,它不仅影响可见性,而且实际上会触发子元素受到水平尺寸的限制容器。
我有一个 window 和一个 ListBox
在模板中包含 TextBlock
s:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
...
<ListBox x:Name="AnnotationsList" ScrollViewer.VerticalScrollBarVisibility="Visible" Grid.Row="1" Grid.ColumnSpan="3">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="20*"/>
</Grid.ColumnDefinitions>
<Label Content="{Binding DateAdded}" Grid.Column="0"/>
<TextBlock Text="{Binding Description}" TextWrapping="Wrap" Grid.Column="1"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
我希望 TextBlock
调整大小,模板中的两个元素以 1/20 的比例填充宽度。
相反,TextBlock
永远不会变小,ListBox
会得到一个水平滚动条。
如果我调整 window 的大小,如何保持列表可垂直滚动并确保文本变窄并换行?
正如 Clemens 在评论中回答的那样,HorizontalScrollBarVisibility
有一个选项 Disabled
,它不仅影响可见性,而且实际上会触发子元素受到水平尺寸的限制容器。