WPF / Silverlight中的属性继承?

时间:2009-11-19 18:27:23

标签: wpf silverlight xaml

在WPF和Silverilght中,决定从视觉,声明或逻辑父级继承属性的规则是什么?

1 个答案:

答案 0 :(得分:2)

我必须假设你的意思是属性继承,因为否则问题毫无意义:你不使用视觉/逻辑父类的类继承 - 你只需要引用那个父类。

继承的属性按以下优先级顺序继承:

  1. 来自逻辑父母,如果有的话,否则......
  2. 来自视觉父母,如果有的话,否则......
  3. 来自特定于控件的继承上下文(例如Popup的Popup窗口),如果有的话。这很可能是与XAML中的contains标签相对应的对象(我假设你是“声明性父级”的意思。)
  4. 如果这些类型的父项都不存在或者值是继承的,则使用样式或默认值设置该值。