如何在运行时更改应用程序字体

本文关键字:应用程序 字体 运行时 | 更新日期: 2023-09-27 18:35:26

如何在运行时更改我的应用程序字体? 我的应用程序具有 MDI 窗体和子窗体,我想在主窗体(MDI 窗体)中更改应用程序字体并保存在设置中。 但是当更改字体时,在菜单和控件中没有效果。

fontDialog1.ShowDialog();
Font = fontDialog1.Font;

此外,我添加了此代码以更改主窗体中的所有控件。

foreach (Control c in Controls)
{
    c.Font = fontDialog1.Font;
}

但这种效果在当前形式下并没有改变子形式。比在显示时添加此代码以更改子字体

public FrmChild()
{
    font = myfont;
    foreach (Control c in Controls)
    {
        c.Font = fontDialog1.Font;
    }
    InitializeComponent();
}

如何在运行时更改应用程序字体

 FontDialog fd = new FontDialog();
            fd.ShowDialog();
            Settings.Default.MyFont = fd.Font;
            Settings.Default.Save();
            Font = Settings.Default.MyFont;
            foreach (Control c in Controls)
            {
                c.Font = Settings.Default.MyFont;
            }