我有窗口,在这里我设置一些属性财产继承通过的TabControl
<Window Foreground="White" ...
现在我所有的孩子获得该财产继承的,对不对?像这样
<Window>
<Grid>
<Label> <-- has Foreground="White" without need to explicitly specify it -->
...
但是,一旦我使用TabControl
,继承就会中断。
<Window>
<Grid>
<TabControl>
<TabItem>
<Grid>
<Label> <-- doesn't inherit Foreground property from Window -->
我不能设置为Foreground
TabControl
,也许这就是原因。问题是为什么以及要做什么?我可以使用样式,但是有没有其他的,更明显和更少code-ish的方式?
控件不仅继承属性DataContext和样式。你可以用[Snoop](http://snoopwpf.codeplex.com/)来查看它(在你的例子中'Label'的前景实际上是黑色的) –
我的意思是['property property inheritance'](http:// msdn.microsoft.com/en-us/library/ms753197.aspx)。真的很讨厌自己先说错了。 – Sinatr
@TzahMama,这是不正确的。当然,某些控件(如容器控件和基于文本的控件)会继承属性值。“DependencyProperty”属性值继承将是非常没有意义的,否则,不是吗? – Sheridan