WPF Metin Kutusu'nun arka plan rengini C # kodunda ayarlama


183

Bir WPF metin kutusunun arka plan ve ön plan renklerini program aracılığıyla C # nasıl değiştirebilirim?

Yanıtlar:


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

WPF Ön Plan ve Arkaplan tiptedir System.Windows.Media.Brush. Bunun gibi başka bir renk ayarlayabilirsiniz:

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
Eğer renk özelliğine bir onaltılık değer ayarlamak istersek, nasıl yapılabilir ??
Sauron

11
Brush brush = new SolidColorBrush (Color.FromRgb (r, g, b)) gibi bir şey kullanabilirsiniz;
Timbo

3
Orada da çok güzel LinearGradientBrush:)
BlueRaja - Danny Pflughoeft

6
System.Windows.Media'yı eklediğinizden emin olun.
mack

99

Arka planı onaltılık bir renk kullanarak ayarlamak istiyorsanız bunu yapabilirsiniz:

var bc = new BrushConverter();

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

Veya XAML'de bir SolidColorBrush kaynağı ayarlayabilir ve arkasındaki kodda findResource'u kullanabilirsiniz:

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

(System.Windows.Media.Brush)Application.Current.FindResource("BrushFFXXXXX");Gelecekte birden çok dağıtıcı iş parçacığı kullanmak üzere yükseltilmişse uygulamanız bir iş parçacığı istisnası atmayacağından kullanmak çok tercih edilir .
Contango

24

XAML TextBox oluşturuyorsunuz sanırım?

Bu durumda, metin kutusuna bir ad vermeniz gerekir. Daha sonra arkadaki kodda çeşitli fırçalar kullanarak Background özelliğini ayarlayabilirsiniz. Bunların en basiti SolidColorBrush:

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

6

Hex'i RGB'ye dönüştürebilirsiniz:

string ccode = "#00FFFF00";
int argb = Int32.Parse(ccode.Replace("#", ""), NumberStyles.HexNumber);
Color clr = Color.FromArgb(argb);

5

Onaltılık renkler kullanabilirsiniz:

your_contorl.Color = DirectCast(ColorConverter.ConvertFromString("#D8E0A627"), Color)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.