【发布时间】:2016-07-02 11:56:50
【问题描述】:
我有一个 AppViewModel,它在窗口顶部包含一个菜单。在 AppViewModel 构造中,我展示了一个 UserControl。在这个 UserControl 中,我有一个按钮,它调用另一个视图模型 (UserControl)。
这个想法是保留菜单并处理窗口的内容。所以,我有 1 个窗口和 2 个用户控件。这是对的吗?
如何从 UserControl 内的按钮调用另一个 ViewModel?或者,我必须从窗口调用它?但是按钮在 UserControl 里面!
我的代码:
class AppViewModel : Conductor<object>
{
private bool _MenuIsVisible;
public bool MenuIsVisible
{
get { return _MenuIsVisible; }
set
{
if (_MenuIsVisible != value)
{
_MenuIsVisible = value;
NotifyOfPropertyChange(() => MenuIsVisible);
}
}
}
public AppViewModel()
{
MenuIsVisible = true;
_ShowTutorial();
}
private void _ShowTutorial()
{
ActivateItem(new FirstViewModel());
}
}
public class FirstViewModel : Screen
{
protected override void OnActivate()
{
base.OnActivate();
}
}
在 FirstViewModel 上,我有一个需要调用 SecondViewModel 的按钮。
【问题讨论】:
标签: c# wpf mvvm user-controls caliburn.micro