繁体   English   中英

设置表单最小尺寸

[英]Set form minimum size

我有一个带有相当大边框的 C# 表单。 我想将最小大小设置为 (850, 760)(默认起始大小),但是当我尝试在表单属性菜单中设置该值时,它不断将其更改为 (850, 720)。 我尝试通过代码设置它如下:

this.minimumSize = new System.Drawing.Size(850, 760);

但是当我运行代码时,我仍然可以垂直缩小我的表单。 有没有人对可能出现的问题有任何想法?

编辑:我正在使用两台显示器,一台标准 1280x1024,另一台宽屏 1366x768,这可能是问题吗? 在这种情况下,是否有某种方法可以测试用户的显示器分辨率并基于此设置最小尺寸?

许多在运行时运行的代码在设计时也处于活动状态。 这为 Winforms 设计器提供了一个非常好的 WYSIWYG 用户界面,但它确实有一些不幸的副作用。 包括让设计师崩溃并给你 Darn 的白屏。 或者,如果您误读此网站的名称,将 VS 崩溃到桌面。

这是一种这样的副作用,运行时代码将 MinimumSize 限制为 Screen.WorkingArea,并且在设计时也是如此。 只需尝试输入 (0, 3000) 即可查看发生的情况。 您可以通过在代码中分配属性来强制它。

我认为您应该再次查看您的代码。它应该在设计器或表单的 page_load 中看起来像这样。

    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InitializeComponent()
    {
        this.components = new System.ComponentModel.Container();
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        this.Text = "Form1";
        this.MinimumSize = new Size(300,300);
    }

试试这个:

将表单的FormBorderStyle属性设置为FixedSingle 然后表单边框调整大小将被禁用

暂无
暂无

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

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