Одна проблема достала меня достаточно, чтобы зарегистрироваться в Stack Overflow. В настоящее время, если я хочу сериализовать цвет в строку XML как именованный цвет, или #rrggbb
, или #aarrggbb
, я делаю это так:
[XmlIgnore()]
public Color color;
[XmlElement(ElementName = "Color")]
public String color_XmlSurrogate
{
get { return MyColorConverter.SetColor(color); }
set { color = MyColorConverter.GetColor(value); }
}
Здесь MyColorConverter
выполняет сериализацию так, как мне нравится. Но все это похоже на кучу, с дополнительным полем и все. Есть ли способ заставить его работать в несколько строк, возможно, подключив TypeDescriptor с атрибутами С#, связанными с XML?