我在 C# 表单上的一对按钮单击事件处理程序中得到了这段代码:
class frmLogin
{
private const int SHORT_HEIGHT = 120;
private const int LONG_HEIGHT = 220;
private EventHandler ExpandHandler;
private EventHandler ShrinkHandler;
public frmLogin()
{
InitializeComponent();
ExpandHandler = new EventHandler(btnExpand_Click);
ShrinkHandler = new EventHandler(btnShrink_Click);
btnExpand.Click += ExpandHandler;
}
private void btnExpand_Click(object sender, EventArgs e)
{
this.Height = LONG_HEIGHT;
btnExpand.Text = "<< Hide Server";
btnExpand.Click -= ExpandHandler;
btnExpand.Click += ShrinkHandler;
}
private void btnShrink_Click(object sender, EventArgs e)
{
this.Height = SHORT_HEIGHT;
btnExpand.Text = "Choose Server >>";
btnExpand.Click -= ShrinkHandler;
btnExpand.Click += ExpandHandler;
}
}
文本更改没有问题,但在一台特定的客户端机器上,戴尔 M4300 笔记本电脑工作站,高度更改不会生效。有没有人解决过类似的问题,如果是这样,修复是什么?
最佳答案
我的猜测:该机器上的 DPI 或系统字体大小不同,并且您表单的 AutoScaleMode 是“字体”或“Dpi”,使您的表单的 MinimumSize 或 MaximumSize 阻止更改。
关于C# - 无法设置 form.height,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/361457/