Question

In WPF,I can set the background of a stack panel using the below code

stackPanelFlasher.Background = Brushes.Aqua;

How can I set the color as a hex color code for example #C7DFFC?

Was it helpful?

Solution

BrushConverter bc = new BrushConverter();  
stackPanelFlasher.Background=  (Brush)bc.ConvertFrom("#C7DFFC"); 

Should do the job. If you want to make it waterproof, better would be

BrushConverter bc = new BrushConverter();  
Brush brush=(Brush)bc.ConvertFrom("#C7DFFC"); 
brush.Freeze();
stackPanelFlasher.Background=brush;

needs fewer resources...

OTHER TIPS

stackPanelFlasher.Background = new SolidColorBrush(Color.FromArgb(alpha, red, green, blue));

I think this sample helps you for xaml solution;

 <Border.Background>
       <LinearGradientBrush EndPoint="1.204,0.5" StartPoint="0.056,0.5">
           <GradientStop Color="#FFFFFFFF" Offset="0" />
           <GradientStop Color="#FFD4D7DB" Offset="1" />
       </LinearGradientBrush>                     
  </Border.Background>

The following oneliner should work.

something.Background = (Brush)new BrushConverter().ConvertFrom("#C7DFFC");
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top