djc*_*uch 3 c# wpf listbox datatemplate listboxitem
我正在尝试设置一个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>
Run Code Online (Sandbox Code Playgroud)
我已经在窗口上测试了一个带网格的简单应用程序.简单地指定两个ColumnDefinitions会使它们自动占据宽度的一半,这很好,但是当在listboxitem datatemplate中执行相同操作时,行为是不同的.
我如何更改datatemplate以使其工作?
谢谢!
HorizontalContentAlignmentListBox 的默认值为Left.您需要将其设置为Stretch,以使ListBoxItems占据整个宽度.
以下是ListBox/ListBoxItem样式和模板的更多信息:http://msdn.microsoft.com/en-us/library/cc278062( VS.95).aspx
| 归档时间: |
|
| 查看次数: |
365 次 |
| 最近记录: |