Я пытаюсь заполнить поле со списком словом «Нет», или «Выбрать один», или «все», в зависимости от состояния выбора поля со списком, это не проблема.
Я также хочу иметь в том же поле со списком набор словарных ключей, которые в конечном итоге выбирают фактические значения, соответствующие ключам, что само по себе не является проблемой.
Моя проблема в том, что для объединения этих двух элементов в одно поле со списком мне нужно создать составную коллекцию, и создается впечатление, что составная коллекция по каким-то причинам не принимает словари.
Кто-то указал мне на ObservableCollection, но могу ли я на самом деле использовать и ObservableCollection так же, как я использовал словарь, например,
SelectedValuePath="Value" DisplayMemberPath="Key"
Если я пытаюсь использовать словарь, он просто говорит мне, что эти два свойства или члены недопустимы / недоступны.
По сути, у меня есть это, с контейнером сбора, закомментированным, потому что он выдаст ошибку:
<ComboBox Name="VehicleSelect" DockPanel.Dock="Left" IsEditable="False" Height="19" Margin="1,0,0,0" HorizontalAlignment="Left" AllowDrop="True" SelectionChanged="Vehicle_SelectionChanged" Width="110">
<ComboBox.ItemsSource>
<CompositeCollection>
<ListBoxItem Name="ComboBoxItem_Default" IsSelected="True" Visibility="Collapsed" VerticalAlignment="Top">Select a Vehicle</ListBoxItem>
<!--<CollectionContainer Collection="{Binding Source={StaticResource Vehicles}}" SelectedValuePath="Value" DisplayMemberPath="Key"-->
</CompositeCollection>
</ComboBox.ItemsSource>
</ComboBox>
Есть ли потенциально лучшая работа, которая могла бы быть проще и все же сэкономить место в моем пользовательском интерфейсе, которая могла бы выполнить то же самое по-другому?
Могу ли я использовать ObservableCollection для реализации этого? Я никогда не слышал о ObservableCollection, поэтому, если можно спросить, как бы я использовал его так, как я хочу?