禁用WinForm最小化和最大化?
WinForms的右上angular有三个框,用于最小化,最大化和closures表单。 我想要做的是去除最小化和最大化,同时保持closures。
我也是做什么使closures最小化的forms,而不是closures它。
如何才能做到这一点?
该Form
有两个名为MinimizeBox
和MaximizeBox
属性,将它们都设置为false
。
要停止窗体closures,处理FormClosing
事件,并设置e.Cancel = true;
在那里和之后,设置WindowState = FormWindowState.Minimized;
,尽量减lessforms。
将处理程序绑定到FormClosing
事件,然后设置e.Cancel = true
,并将窗体设置为this.WindowState = FormWindowState.Minimized
。
如果你想真的closures表单,可以创build一个布尔types的布尔值_close
,然后在你的处理函数中设置e.Cancel
为!_close
,这样当用户点击窗口上的X
时,它就不会closures,但是你仍然可以closures它(而不只是杀死它) close = true; this.Close();
close = true; this.Close();
(只是为了使我的答案完整)将MaximizeBox
和MinimizeBox
窗体属性设置为False
。
将MaximizeBox
和MinimizeBox
窗体属性设置为False
您可以简单地禁用最大化内部窗体构造函数。
public Form1(){ InitializeComponent(); MaximizeBox = false; }
在closures时最小化。
private void Form1_FormClosing(Object sender, FormClosingEventArgs e) { e.Cancel = true; WindowState = FormWindowState.Minimized; }
右键单击要隐藏的表单,然后select“控件” – >“属性”。
在“属性”中设置
- 控制框 – >错误
- 最小化框 – >错误
- 最大化Box – > False
你会在devise师那里做到这一点。
如何使窗体最小化closures时已被回答,但如何删除最小化和最大化button不是。
FormBorderStyle
: FixedDialog
MinimizeBox
: false
MaximizeBox
: false