子控件是否继承其同名的父属性

时间:2010-04-19 07:05:25

标签: .net wpf xaml

关于UserControls中属性值继承的简单问题 如果我创建一个UserControl,它有一些标准属性,如Background,BorderBrush和BorderThickness 在那个UserControl中,我有一个边框。我想知道,如果我没有为该边框的属性BorderBrush指定任何设置值或绑定,它会自动从父控件继承BorderBrush的值吗?

谢谢!

1 个答案:

答案 0 :(得分:4)

这取决于。 WPF中的属性通常使用依赖项属性实现。可以定义这些属性以从ancenstor继承它们的值。如果是继承的话,你必须查看每个属性的文档。

BorderBrushBorderThicknessBackground属性不会被继承(大部分时间都没有意义)。

继承属性的一个示例是DataContext属性(因为子元素与其父元素具有相同的数据上下文是有意义的)

有关详细信息,另请参阅MSDN info on Dependency Properties