【问题标题】:Changing a Label font to bold in code C#在代码 C# 中将标签字体更改为粗体
【发布时间】:2017-09-05 16:18:49
【问题描述】:

我搜索了一段时间,但我找不到答案,所以我希望它不是重复的。

我有以下代码:

this.Controls.Add(new Label { Location = new Point(10, 10), 
                              AutoSize = true, 
                              Name = "jobNumStatic",
                              Text = "Job Number:", 
                              Font = new Font(jobNumStatic.Font, FontStyle.Bold) });

我正在尝试将字体更改为粗体。但是该代码给出了错误,当前上下文中不存在名称“jobNumStatic”。有什么办法可以让这里的字体变粗吗?

我也试过了:

jobNumStatic.Font = new Font(jobNumStatic.Font, FontStyle.Bold) });

声明标签后,它给了我同样的错误。

【问题讨论】:

标签: c# winforms label


【解决方案1】:

要使用Label 的默认字体作为原型,只需使用静态Label.DefaultFont 属性:

this.Controls.Add(new Label { Location = new Point(10, 10), 
                          AutoSize = true, 
                          Name = "jobNumStatic",
                          Text = "Job Number:", 
                          Font = new Font(Label.DefaultFont, FontStyle.Bold) });

jobNumStatic 不是您范围内的变量。您在运行时为新创建的LabelName 属性提供字符串"jobNumStatic",但这并不意味着您在编译时神奇地拥有了一个具有该名称的变量.

如果你以后需要访问这个Label,你当然可以声明一个成员变量:

private Label jobNumStatic;

并将创建的实例分配给该变量:

jobNumStatic = new Label { Location = new Point(10, 10), 
                          AutoSize = true, 
                          Name = "jobNumStatic",
                          Text = "Job Number:", 
                          Font = new Font(Label.DefaultFont, FontStyle.Bold) });
this.Controls.Add(jobNumStatic);

【讨论】:

    【解决方案2】:

    只需使用以下代码:

    Label1.Font = new Font(Font, Size, FontStyle.Bold);
    

    【讨论】:

      猜你喜欢
      • 2017-04-27
      • 1970-01-01
      • 2021-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-13
      • 2017-12-18
      相关资源
      最近更新 更多