【问题标题】:Cannot implicitly convert type 'Windows.UI.Color' to 'Windows.UI.Xaml.Media.Brush'无法将类型“Windows.UI.Color”隐式转换为“Windows.UI.Xaml.Media.Brush”
【发布时间】:2013-04-14 04:31:38
【问题描述】:

我有一个包含颜色列表的 ComboBox,我想使用选择的颜色来填充一个矩形,所以我这样做了:

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个字符变成一个int,然后把它们换成新的颜色a、r、g、b吗?

【问题讨论】:

标签: c# wpf


【解决方案1】:

需要使用 SolidColorBrush:

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

【讨论】:

  • 哇,这实际上很明显,我想我现在应该休息一下:D
  • @AmgadSerry,如果这是您要查找的内容,请将其标记为答案。
猜你喜欢
  • 1970-01-01
  • 2020-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-18
  • 2022-01-15
  • 2016-07-31
  • 2011-12-31
相关资源
最近更新 更多