C # применить цвет к шрифту - PullRequest
5 голосов
/ 19 октября 2010

У меня есть такой код.

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 ]

14 голосов
/ 19 октября 2010

Потому что у шрифта нет цвета.Элемент управления может отображать текст с использованием шрифта и цвета, но цвет не является свойством шрифта.

РЕДАКТИРОВАТЬ:

Если вы хотите текстовое поле, которое используетс заданным шрифтом и цветом вы можете сделать следующее (я предполагаю, что вы используете winforms):

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

this.Controls.Add(myTextBox);
2 голосов
/ 19 октября 2010

Шрифты не имеют цветов.Вы используете цвета в самом коде чертежа или со свойством Control.ForeColor

1 голос
/ 19 октября 2010

установить цвет для свойства ForeColor элемента управления. это установит желаемый цвет вашего шрифта. Вы не можете напрямую установить цвет шрифта. вам придется установить шрифт и передний цвет отдельно для контроля.

...