У меня есть AppViewModel, который содержит меню в верхней части окна. В конструкторе AppViewModel я показываю UserControl. В этом UserControl у меня есть кнопка, которая вызывает другую viewmodel (UserControl).Caliburn.Micro Вызов viewmodel из UserControl
Идея состоит в том, чтобы сохранить меню и работать с содержимым окна. Итак, у меня есть 1 окно и 2 UserControls. Это верно?
Как я могу вызвать другую ViewModel с кнопки, находящейся внутри UserControl? Или я должен назвать это из окна? Но кнопка находится внутри 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.
Работал отлично! Большое спасибо! –
на SecondViewModel У меня есть кнопка «Назад», это верно, делает то же самое? Благодаря! –
Вы также можете использовать метод TryClose на экране. Если вы еще этого не сделали, я настоятельно рекомендую отличную документацию здесь: http://caliburnmicro.com/documentation/composition. – Aetherix