I am trying to combine dictionaries from a project of a library of dependent classes, but resource keys cannot be found. Note. I use this workaround to connect to Microsoft from Microsoft , which should allow the structure to search deep enough to find the embedded resources. This does not work.
Failure example
<Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="/MyApplication.ControlLibrary;component/ResourceDictionaries/ResourceLibrary.xaml" /> <ResourceDictionary> <Style TargetType="{x:Type Line}" /> <Main:AppBootstrapper x:Key="bootstrapper" /> </ResourceDictionary> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </Application.Resources>
Inside ResourceLibrary.xaml
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="DefaultColorTheme.xaml" /> <ResourceDictionary Source="TransitionControl.xaml" /> </ResourceDictionary.MergedDictionaries> </ResourceDictionary>
However, he cannot find the resource keys. If I combine each dictionary manually from this class library, it works fine. This, IMO, is beginning to defeat the goal of abstracting resources to an external assembly.
Success example
<Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="/MyApplication.ControlLibrary;component/ResourceDictionaries/DefaultColorTheme.xaml" /> <ResourceDictionary Source="/MyApplication.ControlLibrary;component/ResourceDictionaries/Images.xaml" /> <ResourceDictionary Source="/MyApplication.ControlLibrary;component/ResourceDictionaries/FontIcons.xaml" /> <ResourceDictionary> <Style TargetType="{x:Type Line}" /> <Main:AppBootstrapper x:Key="bootstrapper" /> </ResourceDictionary> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </Application.Resources>
Did I put dummy implicit style in the wrong place? Something here does not add up. Thanks for watching.
source share