2012-02-14 6 views
18

どうすればキャストカラー名SolidColorBrushタイプのキャストカラー名?つまり「イエロー」という言葉を意味する。SolidColorBrushへのキャストカラー名

SolidColorBrush scb = ??? ; // "Yellow" 

ありがとうございます!色、使用取得するための

+2

私は単に[Color]から 'SolidColorBrush'を(_msstn_en-us/library/ms558629.aspx)[_construct_]します。 –

答えて

29

Color col=(Color)ColorConverter.ConvertFromString("Red"); 

は、その後、あなたのブラシを作成します。

Brush brush=new SolidColorBrush(col); 

またはあなたはあなたが

Brush brush=new SolidColorBrush(Colors.Red); 
+0

これはWPFでは完璧ですが、Windows Phone 8では動作しません。WP8でこれを行うには –

+0

おそらくこれが役に立ちます:http://stackoverflow.com/questions/25827964/how-to-convert-a-string-into- a-color-for-windows-phone-c-sharp – HCL

3
// Yellow is green + red 
SolidColorBrush yellowBrush = new SolidColorBrush(System.Windows.Media.Color.FromRgb(255, 255, 0)); 
7

色、列挙型を使用できる場合できないキャスト。彼らは単に異なる概念です。ブラシはブラシで色はまあ色です。ブラシが特定の色で塗装されているという理由だけで、あるものを他のものと交換することはできません。

ただし、たとえば、特定の色でSolidColorBrushを作成することができます:あなたはすでに色の名前を知っている場合

var brush = new SolidColorBrush(Color.Yellow); 
12

はあなたがBrushesから直接ブラシを得ることができます。

SolidColorBrush scb = Brushes.Yellow; //scb seems a bit redundant at this point... 

コードでは、ではなく、の値を知らない文字列がない限り、コンバーターを使用する必要があります。