gpt4 book ai didi

c# - 如何使用 ComboBox (WPF) "Fill"GridViewColumn?

转载 作者:太空狗 更新时间:2023-10-29 20:08:50 24 4
gpt4 key购买 nike

我正在寻找一种使用组合框“完全填充”GridViewColumn 的方法。我可以使用 ComboBox 创建一个单元格模板,并且工作正常。但是 ComboBox 的宽度和高度与 GridViewColumn 不对齐。即使我尝试设置相同的高度/宽度,GridViewColumn 也会隐藏组合框的某些部分。

必须有一些设置或样式来指示 WPF 将 ComboBox 完全填充到 GridViewColumn 的可用空间中

这是我的 XAML。

<Window x:Class="WPFStarter.ComboInsideListView.ComboBoxInsideListViewUsingObject"
x:Name="userControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="ComboBoxInsideListViewUsingObject" Height="300" Width="400">
<Grid>
<ListView x:Name="listView" ItemsSource="{Binding ElementName=userControl,
Path=DataContext.Items}" SelectedItem="{Binding ElementName=userControl, Path=DataContext.SelectedItem, Mode=TwoWay}">
<ListView.View>
<GridView>
<GridViewColumn Header="First Name" DisplayMemberBinding="{Binding Path=First}"/>
<GridViewColumn Header="Gender">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ComboBox x:Name="cmb_Gender" Width="75" SelectedValue="{Binding Path=Gender}"
ItemsSource="{Binding ElementName=userControl, Path=DataContext.Genders}" GotFocus="ComboBox_GotFocus" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>

</ListView.View>

</ListView>
</Grid>
</Window>

最佳答案

将以下样式包含到 ListViews-resources 中。然后,您可以将 ComboBox 的 Horizo​​ntalAlignment-property 设置为 Horizo​​ntalAlignment="Stretch",它将如您所愿:

 <ListView.Resources>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>
</ListView.Resources>

关于c# - 如何使用 ComboBox (WPF) "Fill"GridViewColumn?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3521983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com