Windows Phone(或 Silverlight)中没有 System.Windows.Media.ColorConverter,所以我需要另一种方法来获取包含颜色名称的字符串,例如“Red”并从中生成 Color 对象。
我发现了这种可能性,但它不起作用,因为 colorType.GetProperty 总是返回 null。
public static Color ConvertFromString(string colorString)
{
Color retval = Colors.Transparent;
Type colorType = (typeof(Colors));
if (colorType.GetProperty(colorString) != null)
{
object o = colorType.InvokeMember(colorString,
BindingFlags.GetProperty, null, null, null);
if (o != null)
{
retval = (Color)o;
}
}
return retval;
}
有任何想法吗?