我想知道控制是否会查看自己的资源或父母的资源?
让我们这样说:
<StackPanel>
<Button someProp={StaticResource test1}>
<Button.Resources>
<local:something x:Key="test1"/>
</Button.Resources>
</Button>
<StackPanel>
Button是否在自己的资源字典中查找test1或者是否请求其父(StackPanel)查找它?
如果这个问题重复,我道歉。
答案 0 :(得分:2)
基本上,框架会首先在最本地的Resources
集合中查找Resources
,在本例中为Button
。如果在那里找不到任何内容,它将继续查找控制层次结构,在本例中为StackPanel.Resources
部分。
在此之后,它会查看UserControl.Resources
(如果适用),然后是Window.Resources
,最后是App.Resources
集合。
您可以在MSDN的XAML Resources页面上找到更多信息。