C#将颜色应用于字体

时间:2010-10-19 08:28:23

标签: c# fonts colors drawing

我有这样的代码。

System.Drawing.Color col = System.Drawing.ColorTranslator.FromHtml("#101B83");
System.Drawing.Font nameFont = new System.Drawing.Font("Tahoma", 10);
System.Drawing.Font birthdayFont = new System.Drawing.Font("Tahoma", 6);
System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Black);
nameFont.Color = col;

最后一行不起作用,因为无法找到.Color字段。为什么呢?

3 个答案:

答案 0 :(得分:14)

因为字体没有颜色。控件可以使用字体和颜色呈现文本,但颜色不是字体的属性。

修改

如果您想要一个使用给定字体和颜色的文本框,您可以执行以下操作(我假设您使用的是winforms):

var myTextBox = new TextBox();
myTextBox.ForeColor = col;
myTextBox.Font = birthdayFont;
myTextBox.Text = "Happy birthday!";

this.Controls.Add(myTextBox);

答案 1 :(得分:2)

字体没有颜色。您可以在绘图代码中使用颜色,也可以使用Control.ForeColor属性

答案 2 :(得分:1)

将颜色设置为控件的ForeColor属性。这将设置所需的字体颜色。 您无法直接将颜色设置为字体。 你必须分别为控件设置字体和forecolor。