【发布时间】:2011-05-03 08:07:56
【问题描述】:
我有一个包含多个用户控件的画布,其中又包含其他对象。 我想序列化画布并保留所有数据绑定和整个可视化树(并非所有对象都可以在 xaml 中描述)。
我认为创建一个扩展画布并添加序列化功能的自定义控件将解决这个问题。
所以问题是:这是一种正确的方法吗?如果没有,最好的方法是什么?
【问题讨论】:
标签: c# wpf serialization custom-controls
我有一个包含多个用户控件的画布,其中又包含其他对象。 我想序列化画布并保留所有数据绑定和整个可视化树(并非所有对象都可以在 xaml 中描述)。
我认为创建一个扩展画布并添加序列化功能的自定义控件将解决这个问题。
所以问题是:这是一种正确的方法吗?如果没有,最好的方法是什么?
【问题讨论】:
标签: c# wpf serialization custom-controls
我找到了一种解决方法。也就是将不可序列化对象的详细信息放入字典或其他数据结构中并序列化,然后在反序列化对象时将其检索到那里。
但是这对我来说听起来不太正确:/ 我也曾想过同时使用 XamlWriter 和序列化来序列化控件,但我再次认为这不是最好的方法。
【讨论】:
您应该了解,您的 UI 只是显示演示者状态的一种方式。如果你使用Presentation Mode 或MVVM ,你可以序列化你的presenter。它会解决你所有的问题
【讨论】: