C# WPF Token недействителен на BrushConverter
Я конвертирую System.Media.Brush в System.Drawing.Brush, но после изменения цвета. Выдает ошибку "Token is valid" на конвертере.
private Brush DrawingColorToBrush(System.Drawing.Color color)
{
Brush ret;
BrushConverter m;
m = new BrushConverter();
ret = (Brush)m.ConvertFromString(color.ToArgb().ToString("X8"));
return ret;
}
Цвет исходит от System.Windows.Forms.ColorDialog
1 ответ
Решение
Ваш код будет работать, если вы измените свой метод на этот...
private Brush DrawingColorToBrush(System.Drawing.Color color)
{
Brush ret = null;
BrushConverter m = new BrushConverter();
string s = "#" + color.ToArgb().ToString("X8");
if (m.CanConvertFrom(typeof (string)))
{
ret = (Brush) m.ConvertFromString(s);
}
return ret;
}
Ключ должен начинать строку с символа "#".