【发布时间】:2015-06-22 08:25:06
【问题描述】:
我通常在代码隐藏中实例化我的 ViewModel 并将其设置为 Window 或 UserControl 的 DataContext。
对于这个简单的 ViewModel:
public class ViewModel
{
public ObservableCollection<string> items { get; set; }
public ViewModel()
{
items = new ObservableCollection<string>();
items.Add("FirstItem");
items.Add("SecondItem");
items.Add("ThirdItem");
}
}
我正在添加我的本地命名空间,以下语法将正确设置:
<Window.DataContext>
<local:ViewModel/>
</Window.DataContext>
好的,我知道 ViewModel 对象已实例化并设置为窗口的 DataContext,它按预期工作,但有什么方法可以从代码中访问实例化的对象?
如果我使用
在代码隐藏中创建对象ViewModel vm = new VewModel();
this.DataContext = vm;
我能够访问 vm 实例,但使用 XAML 方法,如何访问它?
我创建了这个小示例,以了解是否有可用的简单答案。
【问题讨论】: