2013-04-21 58 views
1

我有一個組合框有一個顏色列表,我想使用選中的顏色來填充矩形我這樣做:不能隱式地將類型'Windows.UI.Color'轉換爲'Windows.UI.Xaml.Media.Brush'

var alwan = typeof(Colors).GetTypeInfo().DeclaredProperties; 
      foreach (var item in alwan) 
      { 
       x.Add(item); 
      } 
      CbForColors.ItemsSource = x; 
      CbForColors_Copy.ItemsSource = x; 

private void CbForColors_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
     var color = CbForColors.SelectedItem as PropertyInfo; 
     //var color2 = color.GetMethod; 
     //var color3 = color2.Invoke(color,null); 
     Rect_Sample.Fill = (Color)color.GetValue(null);  
} 

我得到這個錯誤:

Cannot implicitly convert type ' Windows.UI.Color ' to ' Windows.UI.Xaml.Media.Brush '

註釋行,我得到了argb的顏色,即。 #FFA07FF0(類似的東西)。什麼是已經實施的,以及如何從這個argb顏色?我應該把它變成一個字符串,然後把每個2個字符變成一個int,並把它們放在一個新的顏色a,r,g,b?

+0

我相信這是一個欺騙http://stackoverflow.com/questions/5641078/convert-from-color-to-brush – Bit 2013-04-21 02:28:54

回答

4

需要使用的SolidColorBrush:

Rect_Sample.Fill = new SolidColorBrush((Color)color.GetValue(null)); 
+1

哇TY這實際上相當顯然我想我現在應該休息一下:D – 2013-04-21 02:33:57

+1

@AmgadSerry,如果這就是你要找的,把它標記爲答案。 – 2013-04-21 02:37:11

相關問題