更改标签字体大小动态不在屏幕上更新

时间:2015-10-19 09:58:11

标签: c#

我尝试根据屏幕分辨率更改标签字体大小。在表单加载,显示以及表单构造函数时尝试过,但在屏幕上字体大小与设计时间相同。

Rectangle resolution = Screen.PrimaryScreen.Bounds;
if (resolution.Width == 1024 && resolution.Height == 768)
{
   this.labelEnterRegistration.Font = new Font(this.labelEnterRegistration.Font.FontFamily, 40f);
}

我在标签上添加了一个双击事件来检查字体大小,它在消息框中显示为40(MessageBox.Show(this.labelEnterRegistration.Font.ToString());),那么为什么表单显示不反映这个?

我已尝试过标签Invalidate(),但这也无效。

1 个答案:

答案 0 :(得分:-1)

修好了。正如在设置字体emSize之前所做的那样,我做了以下操作,因此它改变了像素大小:

FontStyle style = this.labelEnterRegistration.Font.Style;
this.labelEnterRegistration.Font = new Font(this.labelEnterRegistration.Font.FontFamily, 40f, style, GraphicsUnit.Pixe

现在保持相同的字体样式!!

感谢@HEPİMİZYARBAYMEHMETALKANIZ的评论,让我再考虑一下。