我有一个设置宽度为1000的ListView,如果它们的宽度设置为1000或更大,我希望这些项目能够扩展以填充此宽度。
我找到的所有答案都建议这样做
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Center"/>
</Style>
</ListView.ItemContainerStyle>
这什么都没做。
这是ListView代码。
<ListView Width="1000" Background="Violet">
<ListView.ItemTemplate>
<DataTemplate>
<Grid Width="1000" Background="Black" HorizontalAlignment="Center">
<TextBlock Text="{Binding}"/>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Center"/>
</Style>
</ListView.ItemContainerStyle>
<ListView.Items>
<x:String>ITEM1</x:String>
<x:String>ITEM2</x:String>
</ListView.Items>
</ListView>
我尝试了ListBox,并且此行为也存在于此。显然,这些项目可以填充原始宽度减去24,因此,如果我将项目的宽度设置为976,则可以完美填充容器。而且,它被隐藏在容器后面。
谢谢。
答案 0 :(得分:1)
问题是ListViewItem
容器具有填充,从所有侧面开始都是12 epx。要删除它,请将属性也设置为0:
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Padding" Value="0" />
</Style>
</ListView.ItemContainerStyle>