带有CompositeCollection的WPF ComboBox – SelectedIndex不粘

我正在使用带有CompositeCollection的ComboBox,如下所示:

        

显示的数据完全符合预期,我现在只想将默认索引/值/项设置为包含内容All的ComboBoxItem,并且遇到一些问题。

如果我设置:

  

这完全被忽略了。

我也尝试过:

  

虽然这确实选择了All值,但是当我打开下拉列表时,突出显示的值是加载到ComboBox上的最后一个值,而不是All值。

如何解决这个问题,以便在数据绑定后我的ComboBoxItem内容保持选中状态?

编辑:

我刚刚尝试用另一个替换我的 ,它工作正常,即使它们仍然在

EDIT2:

图像显示问题所在:

图片

EDIT3:

AllBitsSource的代码:

XAML:

   

代码背后:

 private readonly ObservableCollection _bits = new ObservableCollection(); private void GetCurrentSettings() { setttings = display.GetDisplaySettings(); foreach (var mode in setttings) { var displaySettingInfoArray = mode.GetInfoArray(); if (_bits.Contains(displaySettingInfoArray[4]) == false) { _bits.Add(displaySettingInfoArray[4]); } } } public ObservableCollection AllBits { get { return _bits; } } 

Main()上调用GetCurrentSettings() Main()

由于您在构建ComboBox后添加到Collection中,您可能需要进入Loaded事件并在那里设置SelectedIndex …

         

代码背后:

 private void ComboBox_Loaded(object sender, RoutedEventArgs e) { (sender as ComboBox).SelectedIndex = 0; }