如何在运行时将DataContext更改为另一个视图模型。 运行click事件后,现在数据没有更改:
public PivotPage1()
{
InitializeComponent();
DataContext = App.TeamDocViewModel;
}
private void Button_Click(object sender, EventArgs e)
{
DataContext = App.TaskViewModel;
}
一些建议?
答案 0 :(得分:1)
首先我认为你有一个错字:App.TaskViewMode应该是App.TaskViewModel。第二:你的代码应该有效。您的xaml文件中可能存在绑定问题,如果您在此处发布,则会出现问题。 (也许你绑定到像“User.Name”这样的子成员,并且不在你的模型中实现INotifyPropertyChanged)
如果更改DataContext = App.TaskViewModel会发生什么? to DataContext = null; ?)Xaml很有趣。
答案 1 :(得分:0)
你写的代码应该没问题。这取决于TaskViewMode
是什么以及它是如何工作的。
假设它基于默认Pivot项目模板中的MainViewModel
。您是否在其上调用LoadData()
来填充项目集合?