依赖项属性反序列化是否会触发回调?

时间:2010-11-05 16:59:59

标签: c# wpf

假设我有一个布尔DP,默认值为False,寄存器回调OnDPChanged。每次应用程序退出时,DP都会被序列化。在应用程序启动时,我反序列化DP。 OnDPChanged会在哪些情况下开火?

如果我的理解是正确的,那么在每次启动时都会使用默认值创建DP。之后应用新的反序列化值,如果它与默认值不同,则触发回调???

1 个答案:

答案 0 :(得分:0)

这取决于您如何序列化。 XML序列化程序序列化属性。这意味着它例如使用Text的{​​{1}}属性。但是,二进制序列化程序序列化(私有)字段。

当序列化属性时,使用属性设置器,是的,事件将触发。当字段被序列化时,原始内部数据将被设置而不通过设置器,并且对象将不知道它们已被设置,因此它不能触发事件。