我正在尝试在WPF中做一些简单的事情,但无法找到方法。
我在DataGrid标头中有一个ComboBox来过滤数据。数据绑定到我所有数据的GrouBy语句。
这些显示了一些CheckBox XAML代码是:
<DataGridTextColumn x:Name="Type"
Binding="{Binding TypeOfData, Mode=OneTime}"
SortMemberPath="TypeOfData"
IsReadOnly="true"
CanUserSort="true">
<DataGridTextColumn.Header>
<DockPanel>
<Label Content="Type Of Data"
DockPanel.Dock="Left"/>
<ComboBox x:Name="comboBoxType"
DockPanel.Dock="Right"
SelectionChanged="comboBoxType_SelectionChanged">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel x:Name="itemsComboBox">
<CheckBox Name="checkBoxType"
IsChecked="False"
Content="{Binding Key}"
Unchecked="FilterChange"
Checked="FilterChange"/>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</DockPanel>
</DataGridTextColumn.Header>
</DataGridTextColumn>
前绑定背后的代码是:
comboBoxType.ItemsSource = allData.GroupBy(data=> data.TypeOfData).OrderBy(grp=> grp.Key);
这项工作。
但现在我想在ComboBox的最后或开头添加2个按钮来检查和取消选中所有内容,但我似乎无法找到如何在动态数据模板中添加这些静态按钮。
编辑grek40的答案: 我想要复选框之前或之后的组合框项目中的按钮。
CompositeCollection可能有所帮助,但我似乎无法使其发挥作用。
谢谢
答案 0 :(得分:0)
将DockPanel
替换为具有多个Grid
的{{1}}:
ColumnDefinitions