Windows phone 7 在Wp7中获取GetColorFromHexa时未处理ArgumentOutOfRangeException
当我试图从六边形值获取颜色时,我得到ArgumentOutOfRangeExceptionWindows phone 7 在Wp7中获取GetColorFromHexa时未处理ArgumentOutOfRangeException,windows-phone-7,Windows Phone 7,当我试图从六边形值获取颜色时,我得到ArgumentOutOfRangeException public static SolidColorBrush GetColorFromHexa(string hexaColor) { return new SolidColorBrush( Color.FromArgb( Convert.ToByte(hexaColor.Substring(1, 2), 16),
public static SolidColorBrush GetColorFromHexa(string hexaColor)
{
return new SolidColorBrush(
Color.FromArgb(
Convert.ToByte(hexaColor.Substring(1, 2), 16),
Convert.ToByte(hexaColor.Substring(3, 2), 16),
Convert.ToByte(hexaColor.Substring(5, 2), 16),
Convert.ToByte(hexaColor.Substring(7, 2), 16)
)
);
}
SolidColorBrush brush = GetColorFromHexa("#ADD8E6");
border.Background = brush;
我是否遗漏了任何可能导致此问题的原因?ArgumentOutOfRangeException-
startIndex加上长度表示不在此实例中的位置。
-或-
起始索引或长度小于零
-msdn
这就是造成问题的原因,换句话说,值(最后一个是7,2)超出范围
对于一些可能有助于您解决问题的示例
希望对您有所帮助,祝您好运。
ArgumentOutOfRangeException-
startIndex加上长度表示不在此实例中的位置。
-或-
起始索引或长度小于零
-msdn
这就是造成问题的原因,换句话说,值(最后一个是7,2)超出范围
对于一些可能有助于您解决问题的示例
希望对您有所帮助,祝您好运。看起来您的参数#ADD8E6缺少一个颜色组件。ADD8E6只是三个组件,而ARGB需要四个组件。第四个在哪里?
因此,在Convert.ToByte(hexaColor.Substring(7,2),16)行抛出异常。看起来您的参数#ADD8E6缺少一个颜色组件。ADD8E6只是三个组件,而ARGB需要四个组件。第四个在哪里?
因此,在Convert.ToByte(hexaColor.Substring(7,2),16)行抛出异常