以编程方式更改字体

时间:2010-06-30 20:36:02

标签: c#

C#不喜欢以下代码:

private void btnSizeRandom_Click(object sender, EventArgs e)
{
  btnSizeRandom.Font.Bold = true;
  btnother.Font.Bold = false;
}

有没有办法以编程方式执行此操作?

2 个答案:

答案 0 :(得分:18)

Font的实例是不可变的。您需要构造一个新的Font并将其分配给Font属性。 Font类为此目的有各种构造函数;他们复制另一个实例并改变过程中的风格。

答案 1 :(得分:11)

    private static Font ChangeBoldStyle(Font org, bool bold) {
        FontStyle style = org.Style;
        if (bold) style |= FontStyle.Bold;
        else style &= ~FontStyle.Bold;
        return new Font(org, style);
    }