我在我的项目中使用这个 ObservableCollection-Class: Link
I want to Bind a RibbonMenuButton to a ObservableDictionary<string,bool>
:
<r:RibbonMenuButton ItemsSource="{Binding MyDictionary}">
<r:RibbonMenuButton.ItemContainerStyle>
<Style TargetType="{x:Type r:RibbonMenuItem}">
<Setter Property="IsCheckable" Value="true"/>
<Setter Property="Header" Value="{Binding Path=Key}"/>
<Setter Property="IsChecked" Value="{Binding Path=Value}"/>
</style>
</r:RibbonMenuButton.ItemContainerStyle>
</r:RibbonMenuButton>
但是我得到了例外,因为内部 IDictionary-KeyValuePairs 的值属性是只读的。任何想法如何解决这个问题?
我想到了类似的东西:
<Setter Property="IsChecked" Value="{Binding Source=MyDictionary[{Binding Path=Key}]}"/>
但这不起作用,因为 {Binding} 中的 {Binding} ...