如何在设计时禁用表单调整大小?

4

在我的应用程序中,我从一个通用的BaseForm派生出所有的表单。

现在我需要禁用BaseForm中的调整大小功能,以便在设计时不会调整派生的表单大小。

如何实现这一点?

我需要在设计时进行操作


我现在明白你的意思了,我已经更新了我的回答。 - George Howarth
4个回答

10

这个似乎可行:

[BaseForm.cs]

namespace WindowsFormsApplication1
{
    using System.Windows.Forms;

    public partial class BaseForm : Form
    {
        public BaseForm()
        {
            InitializeComponent();

            this.MaximumSize = this.MinimumSize = this.Size;
        }
    }
}

[DerivedForm.cs]

namespace WindowsFormsApplication1
{
    public partial class DerivedForm : WindowsFormsApplication1.BaseForm
    {
        public DerivedForm()
        {
            InitializeComponent();
        }
    }
}

4

我使用了

this.FormBorderStyle = FormBorderStyle.FixedDialog;

这样做可以将窗体变成类似于对话框的形式。因此,用户无法调整对话框的大小。


3
请使用以下内容:
this.FormBorderStyle = FormBorderStyle.FixedSingle;  

您还可以查看:http://stackoverflow.com/questions/1849135/winform-inheritance-designer-settings-are-copied-to-derived-form - Kangkan
1
在VS设计器GUI中有一个地方可以在设计时设置此属性,您是指的这个吗? - TJB
我所指的是将基本表单中的属性设置为只读。 - Kangkan

2

如果您进入设计视图并查看表单的属性菜单,那么有一个 Locked 属性,可以禁用表单的调整大小功能。

编辑

尝试将 MaximumSizeMinimumSize 属性设置为相同的值。


哦,我现在明白你的意思了。把MaximumSize和MinimumSize设置为相同的值怎么样? - George Howarth

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接