分组组合框,我能够在这里找到一个分组组合框http://www.jarloo.com/wpf-combobox-with-groupings/WPF与膨胀
它适合我使用的例子,除了我需要一个额外的行为。这些项目应该都可以在它们各自的头文件(使用扩展器)下折叠。
例如, 水果 苹果 橙色 葡萄 动物 猫 狗 牛
以上的项目将被显示在组合框的组合风格,但我会想每头(这是水果,动物)是使用扩展器可折叠。你能帮助一个例子吗?
感谢, CHEV
分组组合框,我能够在这里找到一个分组组合框http://www.jarloo.com/wpf-combobox-with-groupings/WPF与膨胀
它适合我使用的例子,除了我需要一个额外的行为。这些项目应该都可以在它们各自的头文件(使用扩展器)下折叠。
例如, 水果 苹果 橙色 葡萄 动物 猫 狗 牛
以上的项目将被显示在组合框的组合风格,但我会想每头(这是水果,动物)是使用扩展器可折叠。你能帮助一个例子吗?
感谢, CHEV
预览试试这个
<Grid>
<Grid.Resources>
<Style x:Key="GroupItem" TargetType="{x:Type GroupItem}">
<Setter Property="Margin" Value="0,0,0,5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander IsExpanded="True">
<Expander.Header>
<DockPanel>
<TextBlock Text="{Binding Name}" FontWeight="Bold" Margin="2,5,0,2" FontSize="14"/>
</DockPanel>
</Expander.Header>
<Expander.Content>
<Border Margin="5,0,0,0">
<ItemsPresenter />
</Border>
</Expander.Content>
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Grid.Resources>
<ComboBox Height="27" HorizontalAlignment="Left" Margin="162,109,0,0" VerticalAlignment="Top" Width="195" DisplayMemberPath="Item" Name="cboGroup">
<ComboBox.GroupStyle>
<GroupStyle ContainerStyle="{StaticResource GroupItem}"/>
</ComboBox.GroupStyle>
</ComboBox>
</Grid>
谢谢。这工作! – Jithu
你想要的是一个TreeView而不是ComboBox
。 WPF TreeView
本地支持此行为。从MSDN下面的例子。
注意:这没有你要找的下拉功能。
您的代码应该是这样的:
<TreeView SelectedItemChanged="TreeView_SelectedItemChanged">
<TreeViewItem Header="Fruit">
<TreeViewItem Header="Apple"/>
<TreeViewItem Header="Orange"/>
<TreeViewItem Header="Grape"/>
</TreeViewItem>
<TreeViewItem Header="Animals">
<TreeViewItem Header="Cat"/>
<TreeViewItem Header="Dog"/>
<TreeViewItem Header="Cow"/>
</TreeViewItem>
</TreeView>
编辑:增加额外的代码,以防止用户点击的标题项目,而是它只是折叠/展开的节点。
private void TreeView_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
{
var item = e.NewValue as TreeViewItem;
if (item == null ||item.Items.Count == 0) return;
item.IsExpanded = !item.IsExpanded;
item.IsSelected = false;
}
编辑:这里的id是什么会是什么样子
那你试试? – nvoigt