取消设置DependencyProperty以进行序列化

时间:2013-08-29 07:00:04

标签: c# wpf xaml serialization

我正在将XAML序列化为一个文件并再次读取它(使用XamlWriter和XamlReader)。

如果从未为元素设置DependencyProperty(如FrameworkElement的Name属性),则可以序列化和反序列化元素而不会出现问题。

但是,只要在序列化之前的某个时间设置了DependencyProperty,就不允许在序列化时使用Null或string.Empty(或者反序列化将抛出XamlParseException,表示无法注册命名对象因为该值不允许为空/空字符串。)

有没有办法有效取消设置DependencyProperty?

非常感谢

1 个答案:

答案 0 :(得分:2)

尝试返回DependencyProperty.UnsetValue。引自MSDN

  

指定WPF属性系统使用的静态值,而不是null,表示该属性存在,但没有由属性系统设置其值。