Я хочу показать текст в текстовом поле в 2 цветах, например 1 строка красная 2 синяя, если я использую name.ForeColor = Color.Red;
весь цвет изменения текста, но я хочу, чтобы это изменило только 1 цвет линии.
Многоцветный TextBox С#
Ответ 1
Вам нужно использовать RichTextBox.
Затем вы можете изменить цвет текста, выбрав текст и изменив цвет или шрифт выбора.
richTextBox1.SelectionFont = new Font("Verdana", 12, FontStyle.Bold);
richTextBox1.SelectionColor = Color.Red;
Ответ 2
Используйте RichTextBox для этого, вот метод расширения Nathan Baulch
public static class RichTextBoxExtensions
{
public static void AppendText(this RichTextBox box, string text, Color color)
{
box.SelectionStart = box.TextLength;
box.SelectionLength = 0;
box.SelectionColor = color;
box.AppendText(text);
box.SelectionColor = box.ForeColor;
}
}
Подробнее здесь
Ответ 3
Вот пример с Fontdialog и Colordialog.
void TextfarbeToolStripMenuItemClick(object sender, EventArgs e)
{
colorDialog1.ShowDialog();
richTextBox1.ForeColor = colorDialog1.Color;
listBox1.ForeColor = colorDialog1.Color;
}
void FontsToolStripMenuItemClick(object sender, EventArgs e)
{
fontDialog1.ShowDialog();
richTextBox1.Font = fontDialog1.Font;
listBox1.Font = fontDialog1.Font;
}
void HintergrundfarbeToolStripMenuItemClick(object sender, EventArgs e)
{
colorDialog1.ShowDialog();
richTextBox1.BackColor = colorDialog1.Color;
listBox1.BackColor = colorDialog1.Color;
}
Ответ 4
Прежде всего, предоставленные вами детали + теги недостаточны - у С# нет единой инфраструктуры пользовательского интерфейса, в ней есть несколько: WPF, Winforms, ASP.NET, Silverlight.
Во-вторых, вы не можете сделать это с помощью обычного элемента управления текстовыми полями в любом из вышеперечисленных. Вам нужно будет найти/создать пользовательский элемент управления пользовательского интерфейса, который имеет другое поведение или использует более продвинутый элемент управления, например. богатое текстовое поле.