Usecase: The user makes font customizations to an object on the design surface, that I need to load/save to my datastore. I.e. settings like Bold, Italics, Size, Font Name need to persisted.
Is there some easy (and reliable) mechanism to convert/read back from a string representation of the font object (in which case I would need just one attribute)? Or is multiple properties combined with custom logic the right option?
Use TypeConverter:
If you want to use XML serialization you can create Font class wrapper which will store some subset of Font properties.
Note(Gishu) – Never access a type converter directly. Instead, access the appropriate converter by using TypeDescriptor. Very important 🙂