C#windowsフォームを使用しており、richtextboxがあり、一部のテキストを赤、一部を緑、一部を黒に色付けしたいと思っています。
その方法は?画像が添付されています。
System.Windows.Forms.RichTextBox
には、名前Color
のタイプSelectionColor
のプロパティがあり、現在の選択または挿入ポイントのテキストの色を取得または設定します。このプロパティを使用して、RichTextBox
の特定のフィールドを指定した色でマークできます。
例
RichTextBox _RichTextBox = new RichTextBox(); //Initialize a new RichTextBox of name _RichTextBox
_RichTextBox.Select(0, 8); //Select text within 0 and 8
_RichTextBox.SelectionColor = Color.Red; //Set the selected text color to Red
_RichTextBox.Select(8, 16); //Select text within 8 and 16
_RichTextBox.SelectionColor = Color.Green; //Set the selected text color to Green
_RichTextBox.Select(0,0); //Select text within 0 and 0
そのことに注意してください:値を与えるLines
のRichTextBox
内のテキストを強調表示する場合は、Object Browser
を介して追加できるRichTextBox.Find(string str)
を使用して計算を回避できます
例
RichTextBox _RichTextBox = new RichTextBox(); //Initialize a new RichTextBox of name _RichTextBox
_RichTextBox.Find("Account 12345, deposit 100$, balance 200$"); //Find the text provided
_RichTextBox.SelectionColor = Color.Green; //Set the selected text color to Green
ありがとう、
これがお役に立てば幸いです:)
文字列の色を変更し、改行値を挿入する機能を提供するこの拡張メソッドを見つけました:
public static void AppendText(this RichTextBox box, string text, Color color, bool AddNewLine = false)
{
if (AddNewLine)
{
text += Environment.NewLine;
}
box.SelectionStart = box.TextLength;
box.SelectionLength = 0;
box.SelectionColor = color;
box.AppendText(text);
box.SelectionColor = box.ForeColor;
}