【问题标题】:WPF dialogBox Don't close the applicationWPF 对话框不要关闭应用程序
【发布时间】:2019-11-21 20:52:48
【问题描述】:

我在 WPF 中制作了一个自定义对话框。我想,当用户单击 X 时,将打开对话框,如果他想退出,则应单击“是”,否则应单击“否”。

    static public bool? close;
    private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
    {
        this.Hide();
        WindowClose windowClose = new WindowClose();
        windowClose.ShowDialog();
        close = windowClose.DialogResult;
        if (close == true)
        {
            Application.Current.Shutdown();
        }

        else
        {
            //DONT CLOSE THE APPLICATION AND SHOW THE CURRENT WINDOW
        }

    }

对话框的代码:

    private void button1_Click(object sender, RoutedEventArgs e)
    {
        this.DialogResult = true;
        this.Close();
    }

    private void button2_Click(object sender, RoutedEventArgs e)
    {
        this.DialogResult = false;
        this.Close();
    }

【问题讨论】:

标签: c# wpf


【解决方案1】:

不确定它在 WPF 中的工作方式是否有所不同,但在标准 winforms 中的对话框代码中,您设置(例如)DialogResult 为 DialogResult.OK(是)和 DialogResult.Cancel(否)。您不需要关闭表单,因为这是在您设置 DialogResult 时自动完成的

然后在你的主窗体中

If (windowClose.ShowDialog() == DialogResult.OK
{
    Application.Current.Shutdown();
}
else
{
    //DONT CLOSE THE APPLICATION AND SHOW THE CURRENT WINDOW
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-25
    • 1970-01-01
    • 2012-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多