WPF-将ResourceDictionary.Source绑定到Presenter\DataContext的ResourceDictionary属性
以下视图\视图模型不起作用(尽管我已尝试): 演示者:WPF-将ResourceDictionary.Source绑定到Presenter\DataContext的ResourceDictionary属性,wpf,xaml,mvvm,data-binding,resourcedictionary,Wpf,Xaml,Mvvm,Data Binding,Resourcedictionary,以下视图\视图模型不起作用(尽管我已尝试): 演示者: class SelectListPresenter : INotifyPropertyChanged { public SelectListPresenter() { //init code } ResourceDictionary PossibleValues { get; } ResourceDictionary AddedValues { get; } } 视图: 上面的代
class SelectListPresenter : INotifyPropertyChanged
{
public SelectListPresenter()
{
//init code
}
ResourceDictionary PossibleValues { get; }
ResourceDictionary AddedValues { get; }
}
视图:
上面的代码未经编辑,仅在MergedDictionaries节点内的第一个ResourceDictionary上显示设计器错误值不能为null
参数名称:item
基于标题,听起来和我的一样,但是我在尝试将“x:Class”添加到设计器中的任何非根元素时出错,并且接受的解决方案对我不起作用。
如果我为每个可能的ResourceDictionary创建一个单独的类,我似乎可以做到这一点,但这正是我试图避免的
我觉得我让事情变得比需要的更复杂了。。。想法
<UserControl ...>
<UserControl.DataContext>
<ViewModels:SelectListPresenter />
</UserControl.DataContext>
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries x:Key="Options">
<ResourceDictionary Source="{Binding PossibleValues}" />
<ResourceDictionary Source="{Binding AddedValues}" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<ComboBox ItemsSource="{StaticResource ResourceKey=Options}" />
</UserControl>