【问题标题】:Disable resizing of a Windows Forms form禁用 Windows 窗体窗体的大小调整
【发布时间】:2011-12-19 16:39:04
【问题描述】:

如何关闭用户调整 Windows 窗体窗体大小的功能?

我让它在点击时自行调整大小。

【问题讨论】:

标签: c# winforms


【解决方案1】:

说明

默认情况下,FormBorderStyle 属性分配了 sizable 值 FormBorderStyle.Sizable。这可以调整表单的大小。

有 7 种 FormBorderStyle 属性值可供使用。

  • 无
  • 固定单人
  • 固定3D
  • 固定对话框
  • 相当大
  • 固定工具窗口
  • SizableToolWindow

根据表单的类型,我们可以相应地分配适当的值。 假设您的表单名称是form1。

从下面选择任何一个使其成为固定

FixedSingle、Fixed3D、FixedDialog 使表单不可调整大小,分配 None 也可以工作,但没有控件就没有意义盒子以防万一。

代码

下面的代码sn-ps,随便用一个

FixedSingle

    form1.FormBorderStyle = FormBorderStyle.FixedSingle;

Fixed3D

    form1.FormBorderStyle = FormBorderStyle.Fixed3D;

固定对话框

    form1.FormBorderStyle = FormBorderStyle.FixedDialog;

无 [可选] 注意:没有控制框

    form1.FormBorderStyle = FormBorderStyle.None;

或者,图形化

我们可以像这样以图形方式应用它。

确保您已选择要使其固定大小的表单。然后您会在 Properties 窗口中看到一个名为 FormBorderStyle property 的属性。

【讨论】:

    【解决方案2】:

    这些答案都不适合我,可能是因为我的窗口有一个状态栏。为了解决这个问题,我这样做了:

    StatusStripObject.SizingGrip = False
    

    同样适用于 StatusBar 对象,例如:

    StatusBarObject.SizingGrip = False
    

    【讨论】:

      【解决方案3】:

      有更有效的答案:只需将以下说明放入Form_Load:

      Me.MinimumSize = New Size(Width, Height)
      Me.MaximumSize = Me.MinimumSize
      

      【讨论】:

        【解决方案4】:

        另一种方法是更改​​属性“AutoSize”(设置为 True)和“AutosizeMode”(设置为 GrowAndShrink)。

        这具有表单自动调整其元素大小的效果,并且不允许用户更改其大小。

        【讨论】:

          【解决方案5】:

          看看FormBorderStyle property

          form1.FormBorderStyle = FormBorderStyle.FixedSingle;
          

          您可能还想删除最小化和最大化按钮:

          form1.MaximizeBox = false;
          form1.MinimizeBox = false;
          

          【讨论】:

          • 请注意,必须将MaximizeBox 设置为false,以防止用户通过Windows key + up 最大化。将ControlBox 设置为false 还不够好。
          【解决方案6】:
          1. 首先,选择表格。
          2. 然后,转到属性菜单。
          3. 并将属性“FormBorderStyle”从 sizable 更改为 Fixed3D 或 FixedSingle。

          【讨论】:

          • 完美...我将 FormBorderStyle 属性设置为“FixedSingle”或“Fixed3D”,这是完美的。用户不能再调整表单的大小了..
          • 这个实际上阻止了用户调整屏幕大小。接受的答案会阻止用户使用全屏按钮和最小化按钮。
          【解决方案7】:

          更准确地说,将以下代码添加到 Form 类的private void InitializeComponent() 方法中:

          this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-04-30
            • 1970-01-01
            • 2019-04-30
            • 2015-05-20
            • 1970-01-01
            • 2019-01-09
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多