MainWindow构造函数被调用两次

Fra*_* Q. 7 c# wpf xaml

我想设置DataContextMainWindow其在视图模型App.OnStartup.我注意到,当这样做时,MainWindow()构造函数被调用两次,我看到2个窗口打开.有什么想法导致这种行为吗?我的代码如下:

public partial class App : Application
{
    protected override void OnStartup(StartupEventArgs e)
    {
        base.OnStartup(e);

        MainWindow mainWindow = new MainWindow();

        // Create the ViewModel to which the main window binds.
        MainWindowViewModel mainWindowViewModel = new MainWindowViewModel();

        // Register handle such that when the mainWindowViewModel asks to be closed, close the window.
        mainWindowViewModel.RequestClose += delegate(System.Object o, System.EventArgs eventArgs)
        {
            mainWindow.Close();
        };


        mainWindow.DataContext = mainWindowViewModel;

        mainWindow.Show();
    }
}
Run Code Online (Sandbox Code Playgroud)

H.B*_*.B. 23

我怀疑仍然StartupUri挥之不去App.xaml......