我希望网格宽度与listview宽度相同,现在它看起来像:
但我想达到的目的是:
代码:
<DataTemplate x:Key="Shared">
<ListView Name="_lv" ItemsSource="{Binding lista}">
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>
</ListView.ItemContainerStyle>
<ListView.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Content="{Binding name}"/>
<Grid Grid.Column="1">
<WrapPanel Orientation="Horizontal">
<telerik:RadNumericUpDown Name="minRNUD" Value="0" />
<Button Width="40" Height="40" Style="{StaticResource MButton}" Margin="0" Padding="1">
<Button.Content>
<Image Source="/myProject;component/Pictures/clr.png" Width="30" Height="30" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Button.Content>
</Button>
</WrapPanel>
</Grid>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</DataTemplate>
有什么想法吗? 谢谢!
答案 0 :(得分:1)
HorizontalContentAlignment属性确定内容的水平对齐
在列表项上设置HorizontalContentAlignment可能会影响它的内容而不是项目本身
但是在ListBox,ListView等父项控件上设置相同会影响其内容的对齐方式或者可以说项目
只需将HorizontalContentAlignment属性移动到父ItemsControl(ListBox,ListView等)即可。将确保物品的所需对齐。
只需将属性HorizontalContentAlignment="Stretch"
添加到所需项目的父项控件即可。