Here is a good discussion on how to serialize WPF:
http://statestreetgang.net/post/2008/06/XAML-Serialization-FTW.aspx
private string Serialize(object toSerialize)
{
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.NewLineOnAttributes = true;
settings.ConformanceLevel = ConformanceLevel.Fragment;
StringBuilder sb = new StringBuilder();
XmlWriter writer = XmlWriter.Create(sb, settings);
XamlDesignerSerializationManager manager = new XamlDesignerSerializationManager(writer);
manager.XamlWriterMode = XamlWriterMode.Expression;
XamlWriter.Save(toSerialize, manager);
return sb.ToString();
}
private object Deserialize(string xamlText)
{
XmlDocument doc = new XmlDocument();
doc.LoadXml(xamlText);
return XamlReader.Load(new XmlNodeReader(doc));
}
source
share