【问题标题】:Visual Studio wont let me remove the maximise/minimise button/icon etcVisual Studio 不会让我删除最大化/最小化按钮/图标等
【发布时间】:2012-06-21 23:46:21
【问题描述】:

我有 Form1.cs,我在属性中设置为无边框、没有图标、最大/最小按钮(并且更改在 Form1.cs 中直观地显示),但是当我调试/运行时,所有这些控件和以前一样。然后在我的代码中的私有 void InitializeComponent() 下找到这些属性,因为 this.ShowIcon = false;等等。但是 Form1.Designer.cs 总是空的,我是不是弄乱了一些设置,覆盖了我的 form1.cs 选择?

【问题讨论】:

  • 你在什么操作系统上运行这个?
  • 如果我正确理解了您的要求,您需要一个没有最小/最大图标的 WinForm
  • 您是否对 this.ShowIcon 进行了交叉引用以查看它是否被写入多个位置?
  • 格哈德我该怎么做?我在 Windows 7 Russ 上。 @HatSoft,我想对设置进行很多更改,但正如我所说的,我所做的所有更改似乎都没有在运行程序时生效。
  • 存储所有更改的地方将是Form.Designer.cs,请尝试查找

标签: c# visual-studio-2010


【解决方案1】:

您是否尝试将表单 .MaximizeBox 和 .MinimizeBox 设置为 false ?

如果是这样,请您发布该 InitializeComponent 方法的内容。

【讨论】:

  • 当然!私有无效 InitializeComponent() { this.SuspendLayout(); // // MainClass // this.ClientSize = new System.Drawing.Size(292, 272); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; this.Name = "MainClass"; this.ShowIcon = false; this.ShowInTaskbar = false; this.TopMost = true; this.ResumeLayout(false); }
【解决方案2】:

如果您将其设置为 False,则 Winform 在设计器上具有 MinimizeBox、MaximizeBox 和 ShowIcon 等属性。那么你就不需要在 private void InitializeComponent() 中写任何代码了

【讨论】:

  • 是的,我不是在代码中手动设置这些,而是​​双击相关框。
【解决方案3】:

设计视图仅显示 Form1.Design.cs 中设置的内容,而不显示您的自定义代码(除了一些事件和属性,如调整大小...)在运行 InitializeComponents 后,您是否覆盖了代码中的任何设计值?

最简单的方法是交叉引用 Form1。

【讨论】:

  • 老实说,我不知道我是否覆盖了任何东西,我确实为其他东西做了一些剪切/粘贴工作,但我认为我没有拿出任何东西。如果我从我的初始化方法中删除这些东西,然后返回表单并双击我想要的所有控件设置,它们会立即再次出现在我的初始化方法中。 this.ShowIcon = false;等等。
【解决方案4】:

如果您尝试删除整个标题栏,您需要将 FormBorderStyle 设置为 None。如果这不起作用,请尝试在表单加载后设置断点并检查值以确保它们是您认为应该的值。这应该不需要任何编码。

【讨论】:

    猜你喜欢
    • 2015-05-02
    • 2019-04-06
    • 2011-02-27
    • 1970-01-01
    • 2018-05-28
    • 1970-01-01
    • 2013-10-10
    • 2011-05-14
    相关资源
    最近更新 更多