Data binding xbap mvvm实现中的问题

Data binding xbap mvvm实现中的问题,data-binding,mvvm,xbap,Data Binding,Mvvm,Xbap,我正在尝试为xbap应用程序实现mvvm设计模式,但无法执行简单的文本绑定 以下是my DemoViewModel.cs的定义 类DemoViewModel:INotifyPropertyChanged { 字符串名 public event PropertyChangedEventHandler PropertyChanged; public string Name { get { return name;

我正在尝试为xbap应用程序实现mvvm设计模式,但无法执行简单的文本绑定

以下是my DemoViewModel.cs的定义

类DemoViewModel:INotifyPropertyChanged { 字符串名

    public event PropertyChangedEventHandler PropertyChanged;

    public string Name
    {
        get
        {
            return name;
        }
        set
        {
            name = value;
            OnPropertyChanged("Name");
        }
    }

    public DemoViewModel()
    {
        Name = "test";
    }

    protected virtual void OnPropertyChanged(string propertyName)
    {
        if (this.PropertyChanged != null)
        {
            this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }
    }        
}
我正在使用视图的代码隐藏将视图绑定到viewmodel

公众舆论 { 初始化组件; DataContext=新的DemoViewModel; }

以下是视图中文本框的绑定定义


看来您已正确连接了所有内容。在执行过程中,请查看“输出”窗口,看看它是否对您的绑定提供了任何警告。此外,尝试将xaml简化为以下内容,看看这是否有帮助:

<TextBox Text="{Binding Name, Mode=TwoWay}"/>

根据你的评论,对于杰斯普朗的回答,我知道出了什么问题=


XBAP缺少使用反射的权限,因此只能绑定到公共类,除非在完全信任的情况下运行。

xaml绑定代码,根据我的说法,“测试”应该在执行时显示在文本框中,这是不可能的。如果我在这里错了,请更正。我已经测试了你的代码,它工作正常。我不确定我要做什么正在进行。调试应用程序时,请检查输出窗口,其中显示数据绑定错误。查看窗口中的任何消息是否有任何帮助。您现在的情况与预期的一样。不确定在我第一次执行时文本是否未显示。无论如何,非常感谢他们对延迟回复表示抱歉……现在一切正常预期的…但我所做的唯一更改是将DemoViewModel类设置为公共的…但是,与将DemoViewModel类设置为私有的wpf应用程序一样,相同的绑定工作正常…有什么原因可以解释为什么xbap appl应该将视图模型类设置为公共的,而wpf不需要?