2012-11-04 49 views
12

मैं सी # विंडोज रूपों का उपयोग करता हूं और मेरे पास समृद्ध टेक्स्टबॉक्स है और मैं लाल रंग में कुछ पाठ रंगना चाहता हूं, कुछ हरे रंग में और कुछ काले रंग में।richtextbox में बहु रंग का उपयोग कैसे करें

ऐसा कैसे करें? छवि संलग्न

enter image description here

+0

कुछ कोड से पता चलता है कि क्या आप पहले से ही मददगार होगा किया जाएं। –

+0

@PaulHiemstra वास्तव में मैं एक सी ++, सी, जावा, असेंबली और अधिक लैंग प्रोग्रामर हूं, मैंने कभी पहले सी # का उपयोग नहीं किया था। मैं सी # के बारे में कोलाज में एक कोर्स लेता हूं। 'जब तक मैं व्यवसाय में नहीं जाऊंगा, मुझे आपकी मदद की आवश्यकता हो सकती है। सुनने के लिए धन्यवाद। – Billie

+0

मैं यहाँ समाधान आप http://stackoverflow.com/a/27149285/998483 – Boobalan

उत्तर

28

System.Windows.Forms.RichTextBox नाम SelectionColor जो हो जाता है या वर्तमान चयन या सम्मिलन बिंदु के पाठ का रंग सेट के प्रकार Color की संपत्ति मिल गया है। आप अपने गुणों के साथ अपने 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 

सूचना है कि: आप RichTextBox.Find(string str) जो Object Browser के माध्यम से जोड़ा जा सकता है का उपयोग करके गणना से बचने के सकता है अगर आप इसे मूल्य

है दे रही है RichTextBox में Lines में पाठ को उजागर करना चाहते हैं

उदाहरण

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 

धन्यवाद,
मैं आप पाते हैं उम्मीद है कि इस उपयोगी :)

+0

लिए देख रहे हैं आशा है कि आप सभी को बहुत बहुत – Billie

+0

@ user1798362 कोई समस्या नहीं धन्यवाद। मैं खुश हूं कि मैं मदद कर सका। एक अच्छा दिन है :) –

+0

यह एक कामकाजी समाधान है लेकिन आगे बढ़ने का एक आसान तरीका है: http://stackoverflow.com/a/10587765/1529139 – 56ka

12

मैं इस विस्तार विधि है कि आप स्ट्रिंग का रंग बदलने की क्षमता देता है और साथ ही एक नई पंक्ति मूल्य डालने पाया:

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; 
    } 
+0

मुझे लगता है कि आप 'box.SuspendLayout()' को भी जोड़ सकते हैं विधि की शुरुआत और अंत में 'बॉक्स। ReesumeLayout() '। – tedebus

-1

आप भागो वस्तु का उपयोग कर सकते रनटाइम पर रंग बदलने के लिए

private Run GetForegroundColor(string strInformation, Brush color) 
     { 
      Run noramlRun = new Run(strInformation); 
      noramlRun.Foreground = color; 
      return noramlRun; 
     } 
परिवर्तन की तरह अधिक जटिल परिदृश्य के लिए

आवश्यकता के आधार पर रंग तो झटका लिंक

https://sites.google.com/site/greateindiaclub/mobil-apps/windows8/customwpfrichtextboxwithcolorchangeandhighlightfunctionality