Definição de plano de fundo do painel personalizado com código de cores
-
15-09-2020 - |
Pergunta
No WPF,pode definir o fundo de uma pilha de painel usando o código abaixo
stackPanelFlasher.Background = Brushes.Aqua;
Como posso definir a cor como um código de cor hexadecimal, por exemplo, #C7DFFC
?
Solução
BrushConverter bc = new BrushConverter();
stackPanelFlasher.Background= (Brush)bc.ConvertFrom("#C7DFFC");
Deve fazer o trabalho.Se você deseja torná-lo impermeável, melhor seria
BrushConverter bc = new BrushConverter();
Brush brush=(Brush)bc.ConvertFrom("#C7DFFC");
brush.Freeze();
stackPanelFlasher.Background=brush;
necessita de menos recursos...
Outras dicas
stackPanelFlasher.Background = new SolidColorBrush(Color.FromArgb(alpha, red, green, blue));
Eu acho que este exemplo ajuda para xaml solução;
<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>
O seguinte oneliner deve funcionar.
something.Background = (Brush)new BrushConverter().ConvertFrom("#C7DFFC");
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow