2010-07-14 107 views
15

面板的背景在WPF中,我可以用下面的代碼設置與自定義顏色代碼

stackPanelFlasher.Background = Brushes.Aqua; 

設置堆疊面板的背景怎樣可以設置顏色,例如#C7DFFC一個十六進制顏色代碼?

回答

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

應該做的工作。如果你想讓它防水,更好的方式是

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

需要更少的資源...

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

我認爲這個示例可以幫助您爲xaml解決方案;

<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>