私の ViewModel には、以下のように宣言された、監視可能な文字列コレクションのディクショナリがあります。
public Dictionary<string, ObservableCollection<string>> NamePartsDict { get; set; }
各 ComboBox がどのコレクションにバインドするかを「選択」できるように、ユーザー インターフェイスで Dictionary を ComboBoxes にバインドしたいと思います。
したがって、私の XAML では、次を使用したいと思います。
<ComboBox x:Name="comboBox" IsEditable="True"
ItemsSource="{Binding CurrentLibrary.NamePartsDict[Year]}" Margin="80,0,0.871,0"></ComboBox>
キー「年」によってインデックス付けされたコレクションにバインドし、コレクションに格納されている文字列を ComboBox に入力することが期待されます。
ただし、この XAML は空の ComboBox になります。
Dictionary自体がバインドできることを確認しました。以下の XAML は、ComboBox に各キーと値のペアの文字列表現を設定します。
<ComboBox x:Name="comboBox" IsEditable="True"
ItemsSource="{Binding CurrentLibrary.NamePartsDict}" Margin="80,0,0.871,0"></ComboBox>
ディクショナリから値を取得するときに、バインディング パスに何か問題がありますか? それとも、不可能なことをしようとしていますか (その場合、別の方法を見つける必要があります!)?
どんな助けでも大歓迎です!
ティム