C# 无法隐式转换类型';Windows.UI.Color';至';Windows.UI.Xaml.Media.Brush';
我有一个组合框,其中有一个颜色列表,我想使用选定的颜色填充矩形,所以我这样做:C# 无法隐式转换类型';Windows.UI.Color';至';Windows.UI.Xaml.Media.Brush';,c#,wpf,C#,Wpf,我有一个组合框,其中有一个颜色列表,我想使用选定的颜色填充矩形,所以我这样做: var alwan = typeof(Colors).GetTypeInfo().DeclaredProperties; foreach (var item in alwan) { x.Add(item); } CbForColors.ItemsSource = x;
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);
}
我得到这个错误:
无法将类型“Windows.UI.Color
”隐式转换为“Windows.UI.Xaml.Media.Brush
”
注释行我得到颜色的
argb
,即#FFA07FF0
(类似于此)。已经实现的有什么问题?我如何从这个argb
生成颜色?我是否应该将其转换为字符串,然后将每2个字符转换为整数,并将它们转换为新颜色a、r、g、b?需要使用SolidColorBrush:
Rect_Sample.Fill = new SolidColorBrush( (Color)color.GetValue(null));
我相信这是一个很明显的骗局我想我现在应该休息一下:D@AmgadSerry,如果这是您要找的,请将其标记为答案。