在c#win窗体中禁用Alt+F4以防止用户关闭该窗体的最佳方式是什么?

我使用窗体作为弹出对话框来显示进度条,我不希望用户能够关闭它.

推荐答案

这就是工作:

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    e.Cancel = true;
}

编辑:为了回应Pix0rs的担忧-是的,你是正确的,你将不能以编程方式关闭应用程序.但是,您只需在关闭窗体之前删除Form_Closing事件的事件处理程序即可:

this.FormClosing -= new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
this.Close();

.net相关问答推荐

EF Core IEntityTypeConfigurations:从数据库提取数据后相关对象为空

如何知道变量是否只是指向另一个对象的pointer或者它是否可以独立存在

C#.Net 中的可选返回

根源是什么?

使用字典作为数据源绑定组合框

LINQ:确定两个序列是否包含完全相同的元素

重新启动(回收)应用程序池

托管和非托管代码、内存和大小有什么区别?

如何找到 ManualResetEvent 的状态?

如何在 C# 中将 HTML 转换为文本?

获取类型的默认构造函数的最有效方法

在 ToString() 之前判断 null

String.Split 仅在 C# 中的第一个分隔符上?

C# 的浮点比较函数

在 C# 中,为什么不能将 List 对象存储在 List 变量中

如何找到二维数组的大小?

EF Core 添加迁移构建失败

如何在安装后立即启动 .NET Windows 服务?

判断对象列表是否包含具有特定值的属性

Roslyn 编译代码失败