WPF:以编程方式添加扩展到其包含ListView的整个宽度的ListView项

时间:2011-04-25 23:14:25

标签: wpf listview listviewitem

我在XAML中定义了一个自定义ListViewItem控件,我们称之为Item.xaml。使用ListView.Items.Add()。

将这些自定义项添加到列表视图中

如何添加这些项目以使它们水平扩展以占据其包含ListView的整个宽度?目前它们始终保持原始宽度。

2 个答案:

答案 0 :(得分:4)

ChrisWue的答案似乎有效但后来我注意到如果我有足够的ListViewItems使列表水平滚动,那么在向下滚动之前不可见的项目不会水平拉伸。

我发现this MSDN thread提供了正确的方法:

<ListView Name="ListView" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
  <!-- Stretch the contents to match the columns' width: -->
  <ListView.ItemContainerStyle>
    <Style TargetType="ListViewItem">
      <Setter Property="HorizontalContentAlignment" Value="Stretch" />
    </Style>
  </ListView.ItemContainerStyle>
  ...

答案 1 :(得分:2)

ListViewHorizontalContentAlignment您需要设置为Stretch

<ListView HorizontalContentAlignment="Stretch" ... >