标签的设计时尺寸(紧凑框架)

时间:2015-09-24 17:03:19

标签: c# compact-framework

我指的是Visual Studio设计视图。使用完整的.NET框架添加标签时,System.Windows.Forms.Label控件默认情况下将AutoSize属性设置为True。如果我将Label控件放到表单上,则默认字体为" Microsoft Sans Serif,12pt,Regular"并且控件的高度为20.将字体更改为(例如)" Tahoma,14pt,Bold"并且高度自动变为23.好。

但是在CF(Compact-Framework)中,Label控件没有AutoSize属性。当我如上所述更改字体时,Label的高度不会改变(保持在20)并且某些文本会被切断。

我的问题是:如果没有打开完整的.NET项目并测试我的字体选择,有没有办法知道在设计时设置Label的高度?

1 个答案:

答案 0 :(得分:2)

您可以使用图形对象来衡量字符串的高度,例如在Paint事件或OnPaint方法中:

Graphics g = e.Graphics;
float lineHeight = g.MeasureString(this.Text, this.Font).Height;

它可以在继承的标签中使用。例如,您可以覆盖OnPaint方法或其他地方并执行此操作,然后它将在设计时运行。

更多资源: