首页 文章

xbap mvvm实现中的问题

提问于
浏览
0

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

以下是我的DemoViewModel.cs的定义,

class DemoViewModel:INotifyPropertyChanged {string name;

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));
        }
    }        
}

我使用view后面的代码将视图绑定到viewmodel,

public DemoView(){InitializeComponent(); DataContext = new DemoViewModel(); }

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

2 回答

  • 0

    我似乎你把所有东西都搞定了 . 执行期间,请查看“输出”窗口,看看它是否为您提供了绑定警告 . 另外,尝试将xaml简化为以下内容,看看是否有帮助:

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

    根据你的评论,对JSPrang的答案,我知道什么是错的=)

    XBAP缺少使用反射的权限,因此只能绑定到公共类,除非以完全信任方式运行 .

相关问题