i 存在资源字典和合并字典的问题,特别是在资源评价业绩方面。 在经过一些绩效测试后,发现资源开发商。 Merged 剂量最多的是注射器(由ANTS简介仪检查)。 我们拥有大约300个资源词典xamls,其中很多人正在使用合并字典,以“包括”其他风格。 得到的“MergedDictionaries”就占我们申请的1 000万次点击。 因此,我的猜测是,我们与整个资源独裁者一道做了完全错误的事情。 因此,我试图重心一切,并想设法消除所有合并的独裁者。
现在谈谈实际问题。 我试图排除合并的独裁者,但我失败了。 我的理解是,当你使用法定资源时,调查需要现在之前确定的资源。 我举了一个简短的例子:
One main project and one custom control library.
海关控制图书馆有2个Xamls。
<!-- Colors.xaml -->
<ResourceDictionary [stripped namespaces] >
<SolidColorBrush x:Key="myColor" Color="Green"/>
</ResourceDictionary>
<!-- Templates.xaml -->
<ResourceDictionary [stripped namespaces]>
<ControlTemplate x:Key="myTemplate" TargetType="Button">
<Rectangle Fill="{StaticResource myColor}"/>
</ControlTemplate>
</ResourceDictionary>
现在,在主要项目中,Maindow.xaml认为情况如此。
<Window x:Class="ResourceTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/ResourceTestLib;component/Themes/Colors.xaml"/>
<ResourceDictionary Source="/ResourceTestLib;component/Themes/Template.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
<Button Template="{StaticResource myTemplate}"/>
</Grid>
</Window>
这是理想的目标,但不幸的是,由于无法找到“米科罗”资源,这一坠毁事件。 我当然知道如何加以固定,在模板中添加一个合并的词典。 xaml and reference Colors. xaml,但我总是认为,资源是根据逻辑树和要素的资源来审视的。 我的理解是;布顿是建立起来的;试图寻找模板;试图看看看看看肤色,不依靠自己的资源,走路和使用窗户资源。
It seems that i m wrong. So i hope someone can shed some light on this for me. We make heavy use of WPF and despite of this we accomplished a lot with it, but because of some wrong learned behaviour in the beginning, our performance is pretty bad just because of the resource lookup. Any help would be greatly appreciated
Thanks in advance Best regards Nico