Pergunta

Como posso converter um System.Windows.Media.Brush para System.Drawing.Brush?

Eu estou tentando obter a cor de um System.Windows.Media.Brush formatado para um objeto System.Drawing.Color.

A seguir solução não funciona, porque requer um objeto SolidColorBrush, ao passo que o objeto i precisa de conversão de um objeto System.Windows.Media.Brush:

public System.Drawing.Color GetColor( System.Windows.Media.SolidColorBrush oBrush )
{
   return System.Drawing.Color.FromArgb( oBrush.Color.A,
                                     oBrush.Color.R,
                                     oBrush.Color.G,
                                     oBrush.Color.B );
}
Foi útil?

Solução

Eu acredito que você pode simplesmente lançá-lo como um SolidColorBrush para obter a cor.

Tente algo como:

MyColor = ((SolidColorBrush)MyMediaBrush).Color;

Outras dicas

   System.Drawing.Color c1 = new System.Drawing.Color();
            c1 = System.Drawing.Color.FromName(Properties.Settings.Default.myColor);
            System.Windows.Media.Color c2 = new Color();
            c2 = Color.FromArgb(c1.A, c1.R, c1.G, c1.B);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top