2016-01-21 64 views
0

比方说,我现在有两个组合框,一个显示制作列表和一个显示的季节从视图模型列表的内容的内容。WPF如何与不同的ItemSource 2个组合框组合成一个

<ComboBox Grid.Column="1" Grid.Row="0" Margin="3" ItemsSource="{Binding Productions}" SelectedItem="{Binding SelectedProduction}" DisplayMemberPath="DisplayName" /> 
<ComboBox Grid.Column="1" Grid.Row="0" Margin="3" ItemsSource="{Binding Seasons}" SelectedItem="{Binding SelectedProduction}" DisplayMemberPath="DisplayName" /> 

我需要做的是将这两个Comboboxes合并为一个。当点击组合框时,它应该显示一个标题,说明制作和每个制作下面应该出现,并且低音部分应该与四季相同。所以图形应该是这个样子:

Combobox Desired Outcome


制作
产量1
production2
production3
四季
1季
season2
season3

  1. 我想,为了使用两个列表作为的ItemSource,我可以 使其中包含生产和季节名单,但 有约束他们无论是在相同的组合框的另一种方式列表?
  2. 然后,它甚至可以使它看起来像在图片?
+1

请参阅此处解释的解决方案:http://stackoverflow.com/questions/3585017/grouping-items-in-a-combobox 与typeof()组合。您还需要一个通用界面来加入2个列表。 – Floc

回答

0

我会使用CompositeCollection这是专门为这种用法而设计的。

对于分组,评论中提到的链接@Floc显示如何使用Grouping

有了这两个,我认为你可以取得成功。只要这两个类从一些共同的东西中获得相似的属性,这应该是非常简单的。

+0

谢谢你们,这正是我想要做的:) – kostas