我有一个长方形,我想用颜色填充。当我编写Fill = "#FFFFFF90"时,它显示了一个错误:
不能隐式地将类型'string‘转换为'System.Windows.Media.Brush’
请给我一些建议。
发布于 2011-07-24 18:40:29
您可以使用XAML读取系统使用的相同机制:类型转换器。
var converter = new System.Windows.Media.BrushConverter();
var brush = (Brush)converter.ConvertFromString("#FFFFFF90");
Fill = brush;发布于 2011-07-24 18:23:40
在代码中,您需要显式创建一个Brush实例:
Fill = new SolidColorBrush(Color.FromArgb(0xff, 0xff, 0x90))发布于 2013-10-29 21:37:03
用于WinRT (Windows应用程序)
using Windows.UI;
using Windows.UI.Xaml.Media;
public static Brush ColorToBrush(string color) // color = "#E7E44D"
{
color = color.Replace("#", "");
if (color.Length == 6)
{
return new SolidColorBrush(ColorHelper.FromArgb(255,
byte.Parse(color.Substring(0, 2), System.Globalization.NumberStyles.HexNumber),
byte.Parse(color.Substring(2, 2), System.Globalization.NumberStyles.HexNumber),
byte.Parse(color.Substring(4, 2), System.Globalization.NumberStyles.HexNumber)));
}
else
{
return null;
}
}https://stackoverflow.com/questions/6808739
复制相似问题