在组成列表框项目的两个控件之间均匀分割宽度?
我正在尝试设置一个列表框,以便每个项目都有一个文本块和一个组合框,在列表框的宽度上均匀分割,但我似乎找不到 ColumnDefinition 属性的神奇组合来做到这一点。 这是我的列表框项目的数据模板。 无论如何,我已经把它清理干净了,因为它是错误的。
<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>
我测试了一个在窗口上带有网格的简单应用程序。 只需指定两个 ColumnDefinition 即可使它们自动占据宽度的一半,这很好,但是在列表框项数据模板中执行相同操作时,行为是不同的。
我将如何更改数据模板以使其正常工作?
谢谢!
I'm trying to setup a ListBox so that every item has a textblock and a combobox, split evenly across the width of the listbox but I can't seem to find the magic combination of ColumnDefinition properties to do it. Here's my DataTemplate for the listbox item. I've cleaned it up since it was wrong, anyhow.
<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>
I've tested a simple application with a grid on a window. Simply specifying two ColumnDefinitions make them automatically take up half of the width, which is nice, but when doing the same in a listboxitem datatemplate, the behavior is different.
How would I change the datatemplate to make it work?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
ListBox 的默认
HorizontalContentAlignment
为 Left。 您需要将其设置为 Stretch 以使 ListBoxItems 占据整个宽度。以下是有关 ListBox/ListBoxItem 样式和模板的更多信息:http: //msdn.microsoft.com/en-us/library/cc278062(VS.95).aspx
The default
HorizontalContentAlignment
for a ListBox is Left. You need to set it to Stretch for the ListBoxItems to take up the entire width.Here's some more info on ListBox/ListBoxItem styles and templates: http://msdn.microsoft.com/en-us/library/cc278062(VS.95).aspx