C # कोड में WPF टेक्स्टबॉक्स का बैकग्राउंड कलर सेट करें


181

मैं प्रोग्रामिक रूप से C # में WPF टेक्स्टबॉक्स की पृष्ठभूमि और अग्रभूमि रंग कैसे बदल सकता हूं?

जवाबों:


335
textBox1.Background = Brushes.Blue;
textBox1.Foreground = Brushes.Yellow;

WPF फोरग्राउंड और बैकग्राउंड टाइप का होता है System.Windows.Media.Brush। आप इस तरह से एक और रंग सेट कर सकते हैं:

using System.Windows.Media;

textBox1.Background = Brushes.White;
textBox1.Background = new SolidColorBrush(Colors.White);
textBox1.Background = new SolidColorBrush(Color.FromArgb(0xFF, 0xFF, 0, 0));
textBox1.Background = System.Windows.SystemColors.MenuHighlightBrush;

2
अगर हम रंग विशेषता के लिए एक हेक्स मान सेट करना चाहते हैं, तो यह कैसे किया जा सकता है ??
— सौरॉन

11
आप ब्रश ब्रश = न्यू सॉलिडकोलरब्रश (Color.FromRgb (r, g, b)) जैसे कुछ का उपयोग कर सकते हैं;
— टिम्बो

3
वहाँ भी बहुत सुंदर है LinearGradientBrush:)
— BlueRaja - डैनी Pflughoeft

6
System.Windows.Media को शामिल करना सुनिश्चित करें।
— 13:20

98

यदि आप एक हेक्स रंग का उपयोग करके पृष्ठभूमि सेट करना चाहते हैं तो आप ऐसा कर सकते हैं:

var bc = new BrushConverter();

myTextBox.Background = (Brush)bc.ConvertFrom("#FFXXXXXX");

या आप XAML में एक SolidColorBrush संसाधन सेट कर सकते हैं, और फिर कोड-बैक में findResource का उपयोग करें:

<SolidColorBrush x:Key="BrushFFXXXXXX">#FF8D8A8A</SolidColorBrush>
myTextBox.Background = (Brush)Application.Current.MainWindow.FindResource("BrushFFXXXXXX");

यह उपयोग करने के लिए बहुत बेहतर है (System.Windows.Media.Brush)Application.Current.FindResource("BrushFFXXXXX");क्योंकि यदि भविष्य में कई डिस्पैचर थ्रेड्स का उपयोग करने के लिए इसे अपग्रेड किया जाता है तो आपके एप्लिकेशन को थ्रेडिंग अपवाद नहीं फेंकना होगा।
— कंटैंगो

24

मुझे लगता है कि आप XAML में TextBox बना रहे हैं?

उस स्थिति में, आपको टेक्स्ट बॉक्स को एक नाम देना होगा। फिर कोड-पीछे में आप विभिन्न प्रकार के ब्रश का उपयोग करके पृष्ठभूमि की संपत्ति सेट कर सकते हैं। इनमें से सबसे सरल है सॉलिडकोलरब्रश:

myTextBox.Background = new SolidColorBrush(Colors.White);



हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.