zl程序教程

您现在的位置是:首页 >  后端

当前栏目

c#winform取消右上角关闭按钮的实现方法

c#Winform方法 实现 关闭 按钮 取消 右上角
2023-06-13 09:15:07 时间

 一种方法是可以在窗体的属性面板将窗体的ControlBox属性设置为false,或者在窗体的构造函数中这样写:

复制代码代码如下:

publicForm1()

{

InitializeComponent();

this.ControlBox=false;  //设置不出现关闭按钮

}
     
不过这样做的话,会连同最小化和最大化按钮都给弄掉了,所以,如果你想只想让关闭按钮不起作用,然后保留最小化、最大化的话,就重写窗体的CreateParams方法:
复制代码代码如下:

//禁用窗体的关闭按钮

privateconstintCP_NOCLOSE_BUTTON=0x200;

protectedoverrideCreateParamsCreateParams

{

get

{

CreateParamsmyCp=base.CreateParams;

myCp.ClassStyle=myCp.ClassStyle|CP_NOCLOSE_BUTTON;

returnmyCp;

}

}

或者取消左上角的关闭事件执行
复制代码代码如下:
privatevoidForm1_Closing(objectsender,System.ComponentModel.CancelEventArgse)

{

e.Cancel=true;

}

//重写OnClosing使点击关闭按键时窗体能够缩进托盘

protectedoverridevoidOnClosing(CancelEventArgse)

{

this.ShowInTaskbar=false;

this.WindowState=FormWindowState.Minimized;

e.Cancel=true;

}