按最小化时程序关闭

时间:2015-12-29 15:08:10

标签: c# visual-studio

我有两个功能

private void Main_Resize(object sender, EventArgs e)
{
    if (FormWindowState.Minimized == WindowState)
    {
        Hide();
        notification.BalloonTipTitle = "Smart Connection";
        notification.BalloonTipText = "Smart Connection has been minimized to the taskbar.";
        notification.ShowBalloonTip(3000);
    }
}

我的Form最小化,

private void Main_FormClosing(object sender, FormClosingEventArgs e)
{
    if (connected)
    {
        if (MessageBox.Show("Are you sure?",
               setting.Split(':')[0],
                MessageBoxButtons.YesNo,
                MessageBoxIcon.Warning,MessageBoxDefaultButton.Button2) == DialogResult.No)
        {
            e.Cancel = true;
        }

    }
}

我的Form结束活动

但是当我按下最小化按钮时,MessageBox会说“你确定吗?”

当我按下任何一个按钮时,对于是和否按钮,程序都会关闭。

但是为什么他们为2个不同的事件分别有2个不同的功能?

我发现为什么this.Hide()关闭我的故事,这是因为我的泼水形式

这是我的斜线形式

public partial class Splash : DevComponents.DotNetBar.Metro.MetroForm
{
    public Splash()
    {
        InitializeComponent();
    }

    private void timer_Tick(object sender, EventArgs e)
    {
        progress.Value += 2;
        if (progress.Value == progress.Maximum)
        {
            this.Hide();
            timer.Stop();
            Main f = new Main();
            f.ShowDialog();
            this.Close();
        }
    }
}

我的Program.cs

 static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);

        bool createdNew;
        using (var mutex = new System.Threading.Mutex(true, "SmartConnection", out createdNew))
        {
            if (createdNew)
            {
                Application.Run(new Splash());
            }
            else
            {
                MessageBox.Show("some text");
            }

        }

    }

1 个答案:

答案 0 :(得分:1)

执行"查找所有参考文献"在

private void Main_FormClosing(object sender, FormClosingEventArgs e)

我的猜测是它连接的不只是FormClose X。

编辑:我尝试了您的Closing事件,当我点击No时它不会关闭,所以不确定为什么它仍然关闭。