69
查看附加样本的属性和行为时,我看到FrameworkPropertyMetadata
,UIPropertyMetadata
和PropertyMetadata
的使用混杂。由于它们都构成一个继承层次结构,我该如何选择使用哪一个呢?什么时候应该通过普通的PropertyMetadata使用FrameworkPropertyMetadata或UIPropertyMetadata?
查看附加样本的属性和行为时,我看到FrameworkPropertyMetadata
,UIPropertyMetadata
和PropertyMetadata
的使用混杂。由于它们都构成一个继承层次结构,我该如何选择使用哪一个呢?什么时候应该通过普通的PropertyMetadata使用FrameworkPropertyMetadata或UIPropertyMetadata?
这些类用于报告依赖项属性的某些行为方面。
检查它们提供的选项的不同类。
例如,
如果你只是想通过DP背属性并提供一个默认值,使用PropertyMetadata
,如果要指定动画行为,使用UIPropertyMetadata
,
但如果某些属性影响wpf框架级别的东西,例如元素布局,父级布局或数据绑定,请使用FrameworkPropertyMetadata
。
详细信息您可以查看MSDN上http://msdn.microsoft.com/en-us/library/ms751554.aspx
真正的问题是,为什么propdp片段使用UIPropertyMetadata,特别是因为有在Silverlight没有PropertyMetadata子?它使我疯狂。 – Grank 2010-06-29 23:32:48
这是因为WPF和Silverlight共享相同的片段。 您可以从此链接尝试不同的Silverlight代码片段: http://blog.nerdplusart.com/archives/silverlight-code-snippets – 2010-07-08 07:54:46
+1编辑代码片段也非常简单。 – 2010-09-14 07:16:24