题
我具有的问题做 ComboBox
延伸到填满整个列宽度 GridViewColumn
.它还应该调整当柱是调整。
在下面的例子,我有一个 StackPanel
与 ComboBox
内。这是伸展,并将在事实上伸展,以填补 StackPanel
宽度。
然后我加入了 ListView
一个栏,含有一个 StackPanel
与 ComboBox
.既 StackPanel
和 ComboBox
被设定为延伸,但是他们没有。我用背景的颜色来标识的大小 StackPanel
s,并没有红除非我设置一个宽度或者加入元素 ComboBox
这样,它需要更多的宽度。
我也试过玩弄的 HorizontalContentAlignment
酒店没有成功。
<StackPanel Height="59" Margin="45,12,38,0" VerticalAlignment="Top" Background="Green">
<ComboBox HorizontalAlignment="Stretch" />
</StackPanel>
<ListView x:Name="MyListView" Margin="0,106,0,0">
<ListView.View>
<GridView>
<GridViewColumn Header="Num" Width="70">
<GridViewColumn.CellTemplate>
<DataTemplate>
<StackPanel Background="red" Orientation="Horizontal" HorizontalAlignment="Stretch">
<ComboBox HorizontalAlignment="Stretch" />
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
<ListViewItem></ListViewItem>
</ListView>
解决方案
试图设置的 Style
的 ListViewItem
.我还删除你在这种情况下.
<ListView x:Name="MyListView" Margin="0,106,0,0">
<ListView.Resources>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListView.Resources>
<ListView.View>
<GridView>
<GridViewColumn Header="Num" Width="170">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ComboBox />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
<ListViewItem></ListViewItem>
</ListView>
不隶属于 StackOverflow