Xaml UWP ListView项目未填充ListView';s宽度
我有一个设置宽度为1000的ListView,如果项目的宽度设置为1000或更多,我希望项目扩展以填充此宽度 我找到的所有答案都表明了这一点Xaml UWP ListView项目未填充ListView';s宽度,xaml,listview,uwp,Xaml,Listview,Uwp,我有一个设置宽度为1000的ListView,如果项目的宽度设置为1000或更多,我希望项目扩展以填充此宽度 我找到的所有答案都表明了这一点 <ListView.ItemContainerStyle> <Style TargetType="ListViewItem"> <Setter Property="HorizontalContentAlignment" Value="Center"/>
<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>
项目1
项目2
我尝试了ListBox,这种行为也出现在那里。显然,物品可以填充原始宽度减去24,因此,如果我将物品的宽度设置为976,它将完全填充容器。然后它就藏在容器后面了
谢谢。问题在于
ListViewItem
容器有一个填充物,从四面八方都是12EPX。要删除它,请将属性也设置为0:
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Padding" Value="0" />
</Style>
</ListView.ItemContainerStyle>
从ItemTemplate的DataTemplate中删除宽度参数,将水平对齐
设置为拉伸
,而不是居中
;告诉我发生了什么事。我不明白“不填充ListView的宽度”是什么意思。你能附上你想要的情况和当前情况的照片吗?@Muzib从模板中移除宽度会将其缩小到物品的最小宽度,在这种情况下,两种对齐方式实际上没有任何作用。Martin的回答是正确的,这是导致问题的默认填充。