C#更改文本框中一个字符的颜色

C# – WPF:如何更改文本框中只有一个字符的颜色? 例如:Word Hello,H的颜色变为红色

您无法使用文本框执行此操作,但可以使用richtextbox: WPF RichTextBox教程

var textRange = MyRichTextBox.Selection; var start = MyRichTextBox.Document.ContentStart; var startPos = start.GetPositionAtOffset(0); var endPos = start.GetPositionAtOffset(1); textRange.Select(startPos, endPos); textRange.ApplyPropertyValue(TextElement.ForegroundProperty, new SolidColorBrush(Colors.Blue)); 

您可以使用如下所示的richtexbox:您甚至可以更改特定字符的背景颜色

 richTextBox1.SelectionStart = characterStartIndex; richTextBox1.SelectionLength = 1; richTextBox1.SelectionColor = Color.Red; richTextBox1.SelectionBackColor = Color.Yellow;