我有一个带有相当大边框的C#表单。我想将最小大小设置为(850,760)(默认的起始大小),但是当我尝试在表单属性菜单中设置值时,它会不断将其更改为(850,720)。我尝试按代码设置它如下:
this.minimumSize = new System.Drawing.Size(850, 760);
但是当我运行代码时,我仍然可以垂直缩小我的表单。有没有人对这个问题有什么想法?
编辑:我正在使用两台显示器,一台标准1280x1024和另一台宽屏1366x768,这可能是问题吗?在这种情况下,有没有办法测试用户的显示器分辨率,并根据它设置最小尺寸?答案 0 :(得分:3)
许多在运行时运行的代码也在设计时处于活动状态。这为Winforms设计师提供了一个非常好的WYSIWYG用户界面,但它确实有一些不幸的副作用。包括让设计师崩溃并给你白色的Darn屏幕。如果您访问此网站的名称,请将VS崩溃到桌面。
这是一个副作用,运行时代码将MinimumSize限制为Screen.WorkingArea,并且在设计时也这样做。只需尝试输入(0,3000)即可查看发生的情况。您可以通过在代码中分配属性来强制它。
答案 1 :(得分:2)
我认为你应该再看看你的代码。它应该在设计师或你的表单的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);
}
答案 2 :(得分:1)
试试这个:
将表单的 FormBorderStyle 属性设置为 FixedSingle 。然后将禁用表单边框大小调整