9

我想创建一个绑定到动态资源的组合框,并有一个自定义的 xaml 预先指定的列表保持在顶部。我知道如何将组合框绑定到动态资源,

<ComboBox Name="comboBox1" Width="Auto" ItemsSource="{Binding}" />

而且我知道如何插入静态项(请参阅WPF - add static items to a combo box)。

<ComboBox Text="Is not open"> 
  <ComboBoxItem Name="cbi1">Item1</ComboBoxItem>
  <ComboBoxItem Name="cbi2">Item2</ComboBoxItem>     
  <ComboBoxItem Name="cbi3">Item3</ComboBoxItem> 
</ComboBox> 

但我不知道如何同时做这两个?

注意:显然,使用自定义小部件等有很多不同的方法可以做到这一点,我只是觉得这应该很容易。

4

1 回答 1

13

CompositeCollection对此非常酷。像这样:

<ComboBox>
    <ComboBox.ItemsSource>
        <CompositeCollection>
            <CollectionContainer Collection="{Binding Source={...whatever...}" />
            <ComboBoxItem Name="cbi1">Item1</ComboBoxItem>
            <ComboBoxItem Name="cbi2">Item2</ComboBoxItem>
            <ComboBoxItem Name="cbi3">Item3</ComboBoxItem>
        </CompositeCollection>
    </ComboBox.ItemsSource>
</ComboBox>
于 2012-10-03T17:18:05.523 回答