我发现你可以序列化一个 wpf 组件,在我的例子中 a FixedDocument
,使用XamlWriter
和 a MemoryStream
:
FixedDocument doc = GetDocument();
MemoryStream stream = new MemoryStream();
XamlWriter.Save(doc, stream);
然后将其取回:
stream.Seek(0, SeekOrigin.Begin);
FixedDocument result = (FixedDocument)XamlReader.Load(stream);
return result;
但是,现在我也需要能够序列化 a DocumentPage
。它缺少一个默认构造函数,这使得XamlReader.Load
调用抛出异常。
有没有办法在没有默认构造函数的情况下序列化 wpf 组件?