c# - 如何删除关闭按钮,而不是它的图标?

标签 c# winforms

我有一个使用 C# .net 4.0 版本开发的 Windows 应用程序。

我需要从我的一个弹出窗口中删除关闭按钮。我可以通过将 Control Box 属性设置为 false 来实现。但在那种情况下,它也会删除我的图标。否则我可以禁用关闭按钮。但是有没有办法只删除关闭按钮(将图标留在原处)?

最佳答案

这是一个更简洁的解决方案:-)

Original post

winuser.h

public partial class Form1 : Form
{
    private const int CS_NOCLOSE = 0x200;
    protected override CreateParams CreateParams
    {
        get
        {
            CreateParams mdiCp = base.CreateParams;
            mdiCp.ClassStyle = mdiCp.ClassStyle | CS_NOCLOSE;

            return mdiCp;
        }
    }

    public Form1()
    {
        InitializeComponent();
    }

}

根据 winuser.h 中的常量,没有标志可以完全摆脱关闭按钮。 (除非您想通过复制按钮左侧的部分来找到一种方法来在按钮顶部绘制 - yuk。)

关于c# - 如何删除关闭按钮,而不是它的图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8258984/

相关文章:

c# - 重建 Visual Studio 库项目引用

c# - Lazy<T> 为什么会得到 Func<T>

javascript - WebBrowser 链接 Project Resources 中的 JavaScript 文件

c# - 如何检测 DataGridView 控件中的垂直滚动条

c# - 如何将两个 ToolStripComboBox 和 Separator 水平添加到一个 ToolStripDropMenuItem 中?

c# - 有没有办法在 SQL Server 2008 中进行查询序列化二进制对象?

c# - 在类里面使用相同类型的列表是一个好的做法吗?

c# - 阻止 Windows 窗体设计器设置属性的属性是什么

c# - 什么是 HttpRequestMessage.Properties?

c# - 如何将 2-3 个参数发送到 Winform C# 程序?