简化示例:
我有一个为用户建模的对象。用户具有名字和姓氏。 UserViewModel
具有我的Models.User
对象的依赖项属性。在UserView
的xaml的声明中,我想将几个TextBlocks
绑定到名字和姓氏属性。
这样做的正确方法是什么?我是否应该为名称字段只读DependencyProperties
,并且在设置依赖属性User
时,更新它们?名称字段可以是常规C#属性吗?或者,我应该像这样绑定:
<TextBlock Text="{Binding User.FirstName}" />
答案 0 :(得分:3)
您通常不会在ViewModel或Model类中使用依赖项属性。您希望改为使用ViewModel实现INotifyPropertyChanged。
如果这样做,您可以使用上面的语法进行绑定。 (但是,如果您希望双向绑定正常工作,则“User”对象也需要实现INotifyPropertyChanged - 否则,代码中对用户所做的更改将不会自动反映在UI中。)