This is my current App.xaml.cs
Its looks simple for one or two, but I have 7-8 windows. Is there a clever way to make this a little more general and better?
public App()
{
    _ViewModel = new MyAppViewModel();
    _ViewModel.OpenXXXWindowEvent += new EventHandler(ViewModel_OpenXXXWindow);
    _ViewModel.OpenYYYWindowEvent += new EventHandler(ViewModel_OpenYYYWindow);
    ...
}
private void ViewModel_OpenXXXWindow(object sender, EventArgs e)
{
    _XXXWindow = new XXXWindow();
    _XXXWindow.DataContext = _ViewModel;
    _XXXWindow.ShowDialog();
}
private void ViewModel_CloseXXXWindow(object sender, EventArgs e)
{
    if (_XXXWindow != null)
        _XXXWindow.Close();
}
private void ViewModel_OpenYYYWindow(object sender, EventArgs e)
{
    _YYYWindow = new YYYWindow();
    _YYYWindow.DataContext = _ViewModel;
    _YYYWindow.ShowDialog();
}
private void ViewModel_CloseYYYWindow(object sender, EventArgs e)
{
    if (_YYYWindow != null)
        _YYYWindow.Close();
}
...
 
     
     
     
     
    