我想在xaml文档的根元素中使用StaticResource。 但是MSDN说:
来自内部的静态资源引用 资源字典必须引用一个 已定义的资源 在资源之前的词汇 参考。前向引用不能 由静态资源解决 参考
而且:
然后查找过程遍历 逻辑树向上,到父 元素及其资源字典。 这一直持续到根元素 到了。
我应该在应用程序中定义资源还是从代码创建资源?
答案 0 :(得分:13)
您实际上可以将任何属性设置为元素和属性,包括像Window.Left这样简单的属性。
这意味着您可以在声明资源后设置Left的值。
<Window.Resources>
<app:LeftConverter
x:Key="LeftConverter" />
</Window.Resources>
<Window.Left>
<Binding
Path="UnconvertedLeft"
Converter="{StaticResource LeftConverter}" />
</Window.Left>
答案 1 :(得分:0)
如果你真的需要从根元素访问ResourceDictionary,你可以将它作为DynamicResource而不是StaticResource引用 - 我不确定它是否可行,但它值得一试。< / p>