我的问题可能听起来很简单,但我无法得到我在任何地方寻找的答案。 我想为Windows Form程序执行 login 页面,但我不希望表单具有右上角的经典按钮(最小化,最大化,关闭)。 我找不到隐藏按钮的属性。
任何人都知道这个好方法吗? 提前致谢
答案 0 :(得分:2)
对于最小化和最大化按钮,只需设置这些属性(例如在构造函数中):
public Form1()
{
MaximizeBox = false;
MinimizeBox = false;
ControlBox = false;
}
答案 1 :(得分:1)
Form
有两个名为MinimizeBox
和MaximizeBox
的属性,将它们都设置为false
。
关闭按钮
在构造和创建Form对象期间,.NET将使用基类CreateParams属性中可用的默认创建参数。
实际上,Forms.Control类中提供了CreateParams property
。在表单类(派生自System.Windows.Forms.Form)中,重写此属性并修改创建标志。要禁用“关闭”按钮,请使用0x200
修改CreateParams的ClassStyle成员。
private const int CP_NOCLOSE_BUTTON = 0x200;
protected override CreateParams CreateParams
{
get
{
CreateParams myCp = base.CreateParams;
myCp.ClassStyle = myCp.ClassStyle | CP_NOCLOSE_BUTTON ;
return myCp;
}
}
答案 2 :(得分:0)
在盒子外思考一下,您是否考虑过显示Windows密码对话框而不是自己编写?这样做的好处是可以使对话框看起来更加原生。
您可以使用CredUIPromptForCredentials
API显示根据需要自定义的对话框。有很多C#包装器,但如果您喜欢自己动手,那么这是一个非常直接的p / invoke。我快速网络搜索发现了这个Stack Overflow问题,已经完成了必要的p / invoke工作。