Metro Xaml绑定到DataContext.Object.Property不起作用

时间:2012-02-02 15:38:42

标签: xaml

我将我的xaml页面的datacontext设置为传递给construrctor的viewmodel。我的viewmodel有一个名为Item的对象,它有一个名为Category的属性。

public DataEntry(DEViewModel vm)
{
InitializeComponent();
this.vm = vm;
this.DataContext = this.vm;
}

我正在尝试绑定到ViewModel.Item.Category属性,如下所示:

<TextBox Name="txtCategory" Text="{Binding Path=Item.Category, Mode=TwoWay}" />

这不起作用。如果我将datacontext设置为vm.Item,并绑定到Category,它就可以工作。

关于如何绑定到视图模型上的对象悬挂的属性的任何想法?


谢谢,特伦斯

1 个答案:

答案 0 :(得分:0)

这样做,

<TextBox Name="txtCategory" 
    Text="{Binding Category, Mode=TwoWay}" 
    DataContext="{Binding Item}" /> 

它无效的原因是因为它只会查看DataContext的属性通知,因此只需将控件的本地DataContext设置为Item,控件就会处理Item的财产通知。

谢谢, 亚历克斯。