我有一个WinForms应用程序(在Win 7 64x开发)与CheckBox控件。 我已经将我的表单的AutoScaleMode
属性设置为“无”。 窗体在我的机器上看起来不错。
但是,当我将程序发送给运行Windows 8的同事时,CheckBox文本显示不完整。 我不确定这个控件的属性是什么造成的。
我不确定这个控件的属性是什么造成的。
显然,这是AutoScaleMode属性。 或者,我想更准确地说,它是Size属性。
你的同事的机器不仅尺寸不同,而且尺寸也不一样。 通过比较屏幕截图,您可以清楚地看到这一点。 复选框控件的允许大小太小(不够宽)以显示整个标签,所以它会被截断,所有您看到的都是标签的前两个字母。
解决办法很简单:使控制面积更大。 更好的办法是通过将容器窗体的AutoScaleMode属性设置为更明智的内容(如Text或DPI)来自动调整大小。 这确保了当用户使用不同于您的机器的DPI或字体设置时,它不会中断。
长远来说,最好使用TableLayoutPanel或FlowLayoutPanel和Anchor和Dock属性来设计流式布局。 设计师的工作比拖放更多,但是它产生了更好的结果,可以在所有环境中进行扩展。