我正在尝试设置一个 ListBox,以便每个项目都有一个文本块和一个组合框,在列表框的宽度上均匀分布,但我似乎找不到 ColumnDefinition 属性的神奇组合来做到这一点。这是我的列表框项目的 DataTemplate。我已经清理了它,因为它是错误的,无论如何。
<DataTemplate x:Key="MyDataTemplate">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{Binding XPath=text()}"/>
<ComboBox Grid.Column="1" SelectedIndex="0" ItemsSource="{Binding Source={StaticResource Names}, XPath=Name}"></ComboBox>
</Grid>
</DataTemplate>
我已经在窗口上测试了一个带有网格的简单应用程序。简单地指定两个 ColumnDefinitions 会使它们自动占据宽度的一半,这很好,但是在 listboxitem 数据模板中执行相同操作时,行为会有所不同。
我将如何更改数据模板以使其工作?
谢谢!