【问题标题】:c# [Win Form] Unable to use multiple properties of same classc# [Win Form] 无法使用同一类的多个属性
【发布时间】:2016-04-04 08:27:57
【问题描述】:

我创建了一个文本编辑器,当我增加字体大小时,字体样式变为常规样式,或者当我更改字体系列时,字体大小变为默认值。 如何解决这个问题呢?

改变字体大小的代码

    float size = float.Parse(toolStripMenuItem3.Text);
        if (checkwritingpad == true)
            WritingBox.SelectionFont = new System.Drawing.Font(WritingBox.SelectionFont.FontFamily, size, FontStyle.Regular);

【问题讨论】:

  • 你能告诉我们改变字体大小的代码吗?
  • 代码在帖子中更新

标签: c# winforms fonts properties


【解决方案1】:

当我增加字体大小时,字体样式变为常规

当然可以!您正在那里创建具有常规样式的字体!你没看到吗?

WritingBox.SelectionFont = new 
    System.Drawing.Font(WritingBox.SelectionFont.FontFamily, size,
    FontStyle.Regular);
    ^^^^^^^^^^^^^^^^^
             ^
             |
         here, see?

我认为您可以先将以前的样式存储在某个地方,然后使用它来创建新的字体对象:

var style = WritingBox.SelectionFont.Style;
WritingBox.SelectionFont = 
    new System.Drawing.Font(WritingBox.SelectionFont.FontFamily, size,
    style);

你可以使用类似的方法来解决“字体大小变成默认”的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-27
    • 1970-01-01
    • 2013-07-25
    • 1970-01-01
    • 2017-04-03
    • 1970-01-01
    • 2021-11-28
    • 1970-01-01
    相关资源
    最近更新 更多