我有一个Win Form C#app,我允许用户设置标签的字体。默认字体存储在此应用程序的Properties.Settings条目中,并使用字体对话框进行选择。
在我的应用中,我将此字体指定给标签:
Label.Font = Glob.ps.evFont; // Glob.ps is the Property.Settings for this app
出于某种原因,当我尝试显示此标签时,我得到一个"参数无效"与字体相关的异常"高度"属性。
我尝试的字体是非常香草的Windows字体(Arial,Segoe UI等)。如果我在标签中明确创建字体,则应用程序可以运行:
Label.Font = new Font("Arial", 12.0F, FontStyle.Bold);
任何想法会发生什么?
答案 0 :(得分:1)
是否可以正确读取设置?
创建了一个空的winform项目来测试通过应用程序设置设置字体,并最终得到代码背后的代码,并且它工作正常。
设置断点并在应用字体后看到标签高度属性发生变化(增加)。
namespace WinForm
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// Apply font from the properties settings
fontLabel.Font = WinForm.Properties.Settings.Default.evFont;
}
}
}