Настройка цвета текста в текстовом поле C # - PullRequest
4 голосов
/ 03 июля 2011

У меня есть многострочное текстовое поле, которое используется для отображения сообщений о состоянии операций, которые я выполняю в приложении. Я хочу установить отдельные цвета для разных строк в текстовом поле. Если я использую свойство ForeColor, оно устанавливает цвет всего текста. Я хочу установить цвет одной линии. Как я могу это сделать?

Спасибо, Ракеш.

Ответы [ 6 ]

7 голосов
/ 03 июля 2011

Вам нужно использовать RichTextBox .Затем вы можете использовать свойства SelectionStart , SelectionLength и SelectionColor , чтобы достичь того, что вы хотите, в качестве самого простого решения.Вы также можете изменить RTF напрямую.На самом деле вы можете просто отредактировать код конструктора и изменить ссылки System.Windows.Forms.TextBox на RichTextBox, а затем внести небольшие изменения в код.

2 голосов
/ 03 июля 2011

Элемент управления TextBox не поддерживает раскраску промежуточных строк. используйте вместо этого ListView. Вы можете добиться похожего внешнего вида, используя режим просмотра «Подробности» или «Список».

1 голос
/ 03 июля 2011

Вы не можете сделать это со встроенным элементом управления.

Либо наследуйте его и создайте свой собственный элемент управления, либо используйте что-то вроде этого:
Цвет фона элемента ListBox (winforms)

Там есть цвет фона, но вы также можете применить другой цвет переднего плана.

0 голосов
/ 03 июля 2011

Для этого вы должны использовать richtextbox.Вы можете указать все виды форматирования inline с вашим текстом

0 голосов
/ 03 июля 2011

Вы не можете.

Вам нужно использовать Rich TextBox .

0 голосов
/ 03 июля 2011

TextBox не поддерживает несколько цветов (или шрифтов или размеров). Вам придется использовать RichTextBox.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...