【发布时间】:2011-05-20 16:21:12
【问题描述】:
我有一个包含三个子用户控件的页面。我在父 Page 中设置了 DataContext 视图模型资源,三个子控件引用了父 DataContext,因为所有 3 个子用户控件都使用相同的 ViewModel。都很好。
但是,其中一个 UserControl 存在绑定问题(我可以看到这是因为 Silverlight 5 Beta 中的新 XAML 调试功能。)有问题的 UserControl 是 ItemsControl。每个项目内有一个按钮和 2 个文本框。该按钮绑定到命令。错误是 Button 找不到它的绑定。 2个文本框正确绑定。 ItemsControl 的 ItemSource 绑定到 viewmodel 中的 ObservableCollection。
我的问题是:如何告诉 Button 在“更高级别”上查找其绑定,而不是 Observable Collection,即:转到视图模型,而不是您的直接父级(Observable Collection)。您不能为ChildControl 中的按钮设置DataContext,因为对视图模型的引用不存在。它在父级中。
【问题讨论】:
-
您提到了 Silverlight 5,但您已经标记了您的目标 Silverlight 4,这在这种情况下会有所不同。
标签: silverlight silverlight-4.0 mvvm