WPF附加的DependencyProperty--如何解析本地值?

WPF附加的DependencyProperty--如何解析本地值?,wpf,dependency-properties,Wpf,Dependency Properties,关于未附加的依赖性属性,我的理解是——如果我是初学者,请纠正我的错误——解析局部值的过程是基于首先根据所讨论的给定依赖性属性,找出依赖性属性的关键是什么。该键是一个哈希代码或某个唯一值,表示DependencyProperty所有者的类型以及属性的名称(例如,背景) 一旦计算出该键,值解析过程将继续使用属于父类型的字典查找该键的mtach,该字典包含DependencyProperty键(如前一句所述)和使用DependencyProperty集包装器(例如SetBackground)在本地设置

关于未附加的依赖性属性,我的理解是——如果我是初学者,请纠正我的错误——解析局部值的过程是基于首先根据所讨论的给定依赖性属性,找出依赖性属性的关键是什么。该键是一个哈希代码或某个唯一值,表示DependencyProperty所有者的类型以及属性的名称(例如,背景)

一旦计算出该键,值解析过程将继续使用属于父类型的字典查找该键的mtach,该字典包含DependencyProperty键(如前一句所述)和使用DependencyProperty集包装器(例如SetBackground)在本地设置的相应值对应于所讨论的从属财产。如果在字典中找到键,则认为本地值已解析,字典中的值dound就是我们要查找的值

但是,如果之前未按所有者控件使用集合包装器,以致上一段中提到的字典(DependencyProperty键和值)不包含我们要查找的键,然后,值解析过程继续在逻辑层次结构中向上移动到下一个父控件,并对父控件应用相同的解析过程。也就是说,在属于父控件的键/值字典中查找由父类型和相同属性名称组成的键。如果这次发现了,那么解决方案就完成了;否则,本地值解析将前进到逻辑层次结构中的下一个控件,并且该过程将在自身上重复,直到DependencyProperty的值被解析为止。如果未找到值,则采用不同的确定方法,该方法不依赖于本地设置值

这或多或少是未附加的DependencyProperty的过程。我想知道是否有人能告诉我每个这样的财产的(本地价值)价值解析过程是什么。我假设键值字典是驻留在外部控件中的字典(即,不是DependencyProperty驻留的控件),对吗?对于父控件为外部控件(必须是静态的)的DependencyProperty,这可能是存储值的字典(使用集合[ProePropertyName])


如果有人能透露更多关于附属财产的信息,我将不胜感激

附加属性不层叠。也就是说,如果没有显式设置控件上的值,那么它默认为属性定义中定义的
DefaultValue