2009-06-02 18 views
6

आप सी # में समूह बॉक्स के टेक्स्ट रंग को कैसे बदलते हैं? "प्रलेखन" में इसका भी उल्लेख नहीं है, और गूगलिंग ने जवाब नहीं दिया है।समूह बॉक्स टेक्स्ट रंग बदलें?

धन्यवाद! एलन

+4

मेरे मामले में, ForeColor सही ढंग से सेट किया गया था (व्हाइट को, शायद फॉर्म से विरासत में मिला, जिसमें ForeColor = White और BackColor = Black था), लेकिन ब्लू दिखा रहा था - इसे किसी अन्य रंग में बदल रहा था और गुण विंडो में वापस चाल! अब, संपत्ति बोल्ड में प्रदर्शित होती है, यह दर्शाती है कि यह बदल गया था। –

उत्तर

12

ForeColor संपत्ति का उपयोग करें। नमूना कोड:

using System; 
using System.Drawing; 
using System.Windows.Forms; 

class Test 
{  
    [STAThread] 
    static void Main(string[] args) 
    { 
     Form form = new Form(); 
     GroupBox group = new GroupBox(); 
     group.Text = "Text"; 
     group.ForeColor = Color.Red; 
     form.Controls.Add(group); 
     Application.Run(form); 
    } 
} 
+0

एक आकर्षण की तरह काम करता है! धन्यवाद जॉन! – user20493

1

मुझे लगता है कि अब आप WPF में Winforms में नहीं हैं।

समूह बॉक्स के टेक्स्ट रंग को बदलने के लिए आप ForeColor का उपयोग करते हैं, यह हेडर टेक्स्ट में फ़ॉन्ट रंग बदलता है।

4

यदि आप समूहबॉक्स टेक्स्ट का जिक्र कर रहे हैं, तो जॉन स्कीट ने जो पोस्ट किया है उसका उपयोग करें।

 foreach (Control c in this.groupBox1.Controls) 
     { 
      c.ForeColor = this.groupBox1.ForeColor; //or whatever color you want 
     } 
4

वास्तव में सभी प्रश्नों के उत्तर यहां पोस्ट बटन, लेबल आदि groupbox अंदर रहने वाले की तरह अन्य नियंत्रणों के ForeColor परिवर्तन: यदि आपने groupbox में बाद के सभी नियंत्रण की बात कर रहे हैं, तो आप इस कोड का उपयोग कर सकते हैं। विशेष रूप से समूह बॉक्स के टेक्स्ट रंग को बदलने के लिए एक सरल कामकाज है।

private void button1_Click(object sender, EventArgs e) 
    { 
     List<Color> lstColour = new List<Color>(); 
     foreach (Control c in groupBox1.Controls) 
      lstColour.Add(c.ForeColor); 

     groupBox1.ForeColor = Color.Red; //the colour you prefer for the text 

     int index = 0; 
     foreach (Control c in groupBox1.Controls) 
     { 
      c.ForeColor = lstColour[index]; 
      index++; 
     } 
    } 
बेशक

ऊपर कोड अर्थहीन हो सकता है अगर आप नियंत्रण जोड़ रहे प्रोग्राम के रूप में बाद में groupbox है, लेकिन अच्छी बात आप कोड में अतिरिक्त शर्तों जोड़कर सभी कि स्थितियों को संभाल सकता है। दोगुना सुनिश्चित करने के लिए, नियंत्रण और अग्रदूत की keyvaluepair की एक सूची नियोजित किया जा सकता है।

+1

दोस्त के चारों ओर एक काम बढ़िया! यह वही है जिसे मैं देख रहा था। वोट +1 :) –

+0

ऊपर नोट करें धागा सुरक्षित नहीं है। यदि आप समूह बॉक्स रंग बदल रहे हैं और एक ही समय में नियंत्रण जोड़/हटा रहे हैं, तो आप रंग के साथ नियंत्रण संदर्भ को सहेजने के लिए एक शब्दकोश या टुपल्स की एक सूची का उपयोग कर सकते हैं, फिर उस संग्रह पर फ़ोरैच को इसके बजाय दूसरे लूप में फोरच करें नियंत्रण सूची जो बदल सकती है। –

+0

@ डेनिस एसकिडमोर हाँ अच्छा बिंदु, मैंने पहले ही उस पंक्ति के उत्तर में इसका उल्लेख किया है। – nawfal

2

या मैं अपने कोड केवल groupBox के लिए रंग के 2 प्रकार के बीच तो उपयोगकर्ता चुन सकते हैं थोड़ी बदल गई हैं:

ऊपरी mehod को पासिंग "सही" या "गलत" मूल्यों, groupBox बदल जाएगा केवल Forecolor - जबकि अन्य सभी नियंत्रण अग्रदूत डिफ़ॉल्ट (काला) रहेंगे।

मेरा एक प्रतिशत।

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