Data binding 从XAML绑定到ViewModel

Data binding 从XAML绑定到ViewModel,data-binding,xaml,mvvm,c#-4.0,Data Binding,Xaml,Mvvm,C# 4.0,我是MVVM模型的新手,所以我想要一些建议,我现在使用的解决方案似乎不起作用 说明: 我有一个Viewmodel,其中包含一个可观察到的客户集合, 我用“后退”和“前进”按钮将它们显示在网格中。 grids datacontext设置为SelectedCustomer,这是我的viewmodel中的一个属性 到目前为止还不错 但是,客户有一个statusfield,它是数据库中statusrow的整数。 在我的viewmodel中,我填充了这个列表observablecollection,但是当

我是MVVM模型的新手,所以我想要一些建议,我现在使用的解决方案似乎不起作用

说明: 我有一个Viewmodel,其中包含一个可观察到的客户集合, 我用“后退”和“前进”按钮将它们显示在网格中。 grids datacontext设置为SelectedCustomer,这是我的viewmodel中的一个属性

到目前为止还不错

但是,客户有一个statusfield,它是数据库中statusrow的整数。 在我的viewmodel中,我填充了这个列表observablecollection,但是当我尝试填充CustomerGrid中的组合框时,没有显示任何数据。我猜这是因为网格上的Datacontext是SelectedCustomer属性,而statuslist位于根viewmodel中

问题是,我的组合框如何从customergrid中访问我的状态列表,或者我应该如何处理这种情况

{Binding DataContext.ListOfStatus, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TypeOfParentControl}}}

您可以绑定到父级的数据上下文

一些网格也允许绑定组合框列。这取决于网格-我从未在WPF或Silverlight中使用过网格,所以请将其作为一个提示。

好的,听起来很合乎逻辑,我的网格位于StackPanel中,因此使用以下方法应该可以工作:但它不能,combobox仍然是空的。有什么想法吗?问题是我没有在XAML中设置对viewmodel的引用,而是在App.XAML中设置了对viewmodel的引用。当我将viewmodel声明为staticresource时,它起了作用。