.net 如何在应用程序初始化后立即打开对话框?

.net 如何在应用程序初始化后立即打开对话框?,.net,wpf,startup,.net,Wpf,Startup,我试图在WPF应用程序启动后立即打开一个模式对话框(使用ShowDialog(this))。我尝试了以下方法,这两种方法都会引发InvalidOperationException,可能是因为窗口尚未初始化: public MainWindow() { InitializeComponent(); ShowMyDialogDammit(); } 以及: 如何执行此操作?尝试从windows的已加载事件中执行此操作。为事件添加处理程序(发生在“元素布局、呈现并准备交互时”),然后

我试图在WPF应用程序启动后立即打开一个模式对话框(使用
ShowDialog(this)
)。我尝试了以下方法,这两种方法都会引发InvalidOperationException,可能是因为窗口尚未初始化:

public MainWindow()
{
    InitializeComponent();

    ShowMyDialogDammit();
}
以及:


如何执行此操作?

尝试从windows的已加载事件中执行此操作。

为事件添加处理程序(发生在“元素布局、呈现并准备交互时”),然后从事件处理程序中打开对话框。
例如:

public MainWindow()
{
    InitializeComponent();

    // Adding the event handler
    Loaded += new RoutedEventHandler(IsLoaded);
}

private void Loaded(object sender, RoutedEventArgs e)
{
    ShowMyDialogDammit();
}
试试这个:

var w = new MainWindow();
w.ShowDialog();

在MainWindow类的任何地方都不需要“ShowDialog”调用。

它用于在主窗口打开后立即显示单独的模式对话框。啊,好的。我误解了这个问题。很抱歉
var w = new MainWindow();
w.ShowDialog();