2011-04-01 13 views
14

मैं अपने RichTextBox पर एक स्ट्रिंग जोड़ने के लिए RichTextBox.AppendText फ़ंक्शन का उपयोग कर रहा हूं। मैं इसे एक विशेष रंग से सेट करना चाहता हूं। मैं यह कैसे कर सकता हूँ?डब्ल्यूपीएफ रिचटेक्स्टबॉक्स रंगीन पाठ को जोड़ना

उत्तर

29

बस इस प्रयास करें:

TextRange tr = new TextRange(rtb.Document.ContentEnd,­ rtb.Document.ContentEnd); 
tr.Text = "textToColorize"; 
tr.ApplyPropertyValue(TextElement.­ForegroundProperty, Brushes.Red); 
+0

सुंदर धन्यवाद! – Aks

9

अगर आप चाहते हैं, आप भी यह एक विस्तार विधि बना सकते हैं।

public static void AppendText(this RichTextBox box, string text, string color) 
{ 
    BrushConverter bc = new BrushConverter(); 
    TextRange tr = new TextRange(box.Document.ContentEnd, box.Document.ContentEnd); 
    tr.Text = text; 
    try 
    { 
     tr.ApplyPropertyValue(TextElement.ForegroundProperty, 
      bc.ConvertFromString(color)); 
    } 
    catch (FormatException) { } 
} 

यह बात तो आप सिर्फ

myRichTextBox.AppendText("My text", "CornflowerBlue"); 

या हेक्स जैसे

myRichTextBox.AppendText("My text", "0xffffff"); 

में कर सकते हैं कर देगा रंग स्ट्रिंग आप टाइप अमान्य है, यह बस प्रकार यह में डिफ़ॉल्ट रंग (काला)। उम्मीद है कि यह मदद करता है!

संबंधित मुद्दे