在特定条件下停止执行FormClosing事件吗?

时间:2018-09-08 10:06:33

标签: c# .net-4.0

我制作了多语言的c#应用程序,它将切换语言

  1. 当用户更改语言时,必须重新启动应用程序以使应用程序更改语言

现在我有一个问题和一个问题

  1. 是否可以在不重新启动应用程序的情况下更改语言?

  2. Application.Restart();执行Formclosing事件时也出现问题,如下所示,结果应用程序将不会重新启动 并会针对退出消息进行提示并在Yes时关闭,并使用新语言将应用程序的另一副本复制到其他应用程序中而不关闭旧版本 现在。.是否存在Formclosing事件,仅在那种情况下不执行?还是更好,就像我上面提到的广告要点1所述。

    private void F0100_FormClosing(object sender, FormClosingEventArgs e)
    {
        DialogResult result;
    
        result = MessageBox.Show("Are sure you want to exit?", "Message", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2, MessageBoxOptions.RtlReading);
        if (result == DialogResult.Yes)
        {
            Environment.Exit(1);
        }
        else
        { e.Cancel = true; }
    }
    

1 个答案:

答案 0 :(得分:1)

如果您的问题只是为了避免在执行对Application.Restart的调用时使用户有可能停止关闭,那么您要做的就是查看传递给Form_Closing事件处理程序的CloseReason

Boot-Class-Path: C:/apache-tomcat-8.5.16/lib/tomcat-coyote.jar myagent.jar