禁用标题栏按钮

来源:互联网 发布:win7打开sql服务 编辑:程序博客网 时间:2024/05/22 00:47

1.要全禁用最大最小按钮很容易,只要在属性栏把MinimizeBox设置为false,MaximizeBox设置为false或在Form_load中写下如下代码
       this.MaximizeBox=false;
       this.MinimixeBox=false;

2.要禁用关闭按钮,由于C#没自带属性,我们可以引用API函数

首先引用添加using System.Runtime.InteropServices;
然后将下面的代码写入工程里面

        private const int SC_CLOSE = 0xF060;
        private const int MF_ENABLED = 0x00000000;
        private const int MF_GRAYED = 0x00000001;
        private const int MF_DISABLED = 0x00000002;
        [DllImport("user32.dll", EntryPoint = "GetSystemMenu")]
        private static extern IntPtr GetSystemMenu(IntPtr hWnd, int bRevert);
        [DllImport("User32.dll")]
        public static extern bool EnableMenuItem(IntPtr hMenu, int uIDEnableItem, int uEnable);

再将下面代码写在页面加载的page_load事件中

        IntPtr hMenu = GetSystemMenu(this.Handle, 0);
        EnableMenuItem(hMenu, SC_CLOSE, MF_DISABLED | MF_GRAYED);

原创粉丝点击