如何解决WPF绑定错误:无法使用绑定检索值,并且不存在有效的回退值

时间:2015-07-22 12:47:17

标签: c# wpf binding

我创建了添加到XAML窗口的用户控件:

<ctrl:MenuControl DataContext="{Binding Main, Source={StaticResource Locator}}/>

我的用户控件有菜单项,例如:

<MenuItem Header="example command" Command="{Binding ExampleCommand}" />

App.xaml中定义的定位器:

<Application.Resources>
    <ResourceDictionary> 
        <!--Global View Model Locator-->
        <viewModel:ViewModelLocator x:Key="Locator" d:IsDataSource="True" />
    </ResourceDictionary>
</Application.Resources>

MainViewModel在定位器中定义如下:

    public MainViewModel Main
    {
        get { return ServiceLocator.Current.GetInstance<MainViewModel>(); }
    }

不幸的是,我有很多这样的错误:

  

System.Windows.Data信息:10:无法使用获取值   绑定并且不存在有效的回退值;使用默认值。   BindingExpression:路径= ExampleCommand;的DataItem = NULL;目标要素   是'MenuItem'(Name =''); target属性是'Command'(类型   '的ICommand')

Resharper同样表明:

  

由于未知的DataContext,无法重新解析符号。

我应该如何正确设置datacontext?

0 个答案:

没有答案