Откройте новое окно в MVVM
Допустим, у меня естьMainWindow
иMainViewModel
Яя не используюMVVM Light или жепризма в этом примере.
В этомMainWindow
Я хочу нажать наMenuItem
или жеButton
открытьNewWindow.xaml
не а.UserControl
Я знаю, как использовать это сUserControl
открыть новыйUserControl
в моем существующем окне вContrntControl
илиFrame
Код
public ViewModelBase DisplayUserControl
{
get
{
if (displayUserControl == null)
{
displayUserControl = new ViewModels.UC1iewModel();
}
return displayUserControl;
}
set
{
if (displayUserControl == value)
{
return;
}
else
{
displayUserControl = value;
OnPropertyChanged("DisplayUserControl");
}
}
}
вResourceDitionary
заMainWindow
Я имею :
Дело в том, что я хочу открыть новыйWindow
неUserControl
, Поэтому я использую некоторый код, подобный этому:
private ICommand openNewWindow;
public ICommand OpenNewWindow
{
get { return openNewWindow; }
}
public void DoOpenNewWindow()
{
View.NewWindowWindow validationWindow = new View.NewWindow();
NewWindowViewModel newWindowViewModel = new NewWindowViewModel();
newWindow.DataContext = ewWindowViewModel;
newWindow.Show();
}
а затем связатьOpenNewWindow
кMenuItem
или же .Button
Я знаю, что это не правильный путь, но как правильно это сделать?
Спасибо!