繁体   English   中英

简单的Windows窗体右上方按钮

[英]Simple Windows Form Top Right Buttons

我的问题听起来很简单,但我在任何地方都找不到答案。 我想为Windows窗体程序执行登录页面,但我不希望该窗体具有右上角的经典按钮(最小化,最大化,关闭)。 我找不到隐藏按钮的属性。

有人知道这个好方法吗? 提前致谢

对于最小化和最大化按钮,只需设置这些属性(例如在构造函数中):

public Form1()
{      
    MaximizeBox = false;
    MinimizeBox = false;
    ControlBox = false;
}

Form有两个名为MinimizeBoxMaximizeBox属性,将它们都设置为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;
     }
 } 

请通过此链接获取更多信息

在盒子外思考一下,您是否考虑过显示Windows密码对话而不是自己编写? 这具有使对话框外观更加自然的优点。

您可以使用CredUIPromptForCredentials API显示,根据您的需求自定义对话框。 有很多C#包装器,但如果您喜欢自己动手,那么这是一个非常直接的p / invoke。 我快速的网络搜索揭示了这个Stack Overflow问题,已经完成了必要的p / invoke工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM