窗体关闭事件的形式,我已经做了我自己

本文关键字:我自己 事件 窗体 | 更新日期: 2023-09-27 18:01:23

在visual studio 2010 c#的windows应用程序中,我有以下问题:

我正在制作一个static Form S1HiddenForm;,然后我用它来打开一个应用程序,像这样:

Command("Something[AUTOEXEC=2]", S1HiddenForm);

打开一个普通的Windows窗体。我想创建一个事件,当用户按下X时,他不会让他关闭窗口。

如果我有一个普通的表单,我知道我可以这样做

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
        if (e.CloseReason == CloseReason.UserClosing)
        {
            e.Cancel = true; //I'm sorry Dave, I'm afraid I can't do that.
        }
    }

在设计器视图中使用事件处理程序。

但是在这个S1HiddenForm中我不能这样做。有什么建议吗?这似乎很容易,但是我找不到任何有用的东西。

窗体关闭事件的形式,我已经做了我自己

try with delegate。有关帮助,请查看委托帮助

<<p>类型strong> S1HiddenForm。FormClosing+=并键入TAB,在事件中编写自定义代码。

你在找这个吗?

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        static Form2 f1=new Form2();
        private void Form1_Load(object sender, EventArgs e)
        {
            f1.Show();
            f1.FormClosing += new FormClosingEventHandler(f1_FormClosing);
        }
        void f1_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (e.CloseReason == CloseReason.UserClosing)
            {
                e.Cancel = true; //I'm sorry Dave, I'm afraid I can't do that.
            }
        }
    }
}