У меня есть report.xaml страница, где я определил некоторые локальные ресурсы.Silverlight ResourceDictionary problem
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries >
<ResourceDictionary Source="/My.Namespace;component/Resources/Converters.xaml" />
<ResourceDictionary Source="/My.Namespace;component/Resources/GlobResources.xaml" />
<ResourceDictionary Source="/My.Namespace;component/Resources/ReportingResources.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
В этом же файле reports.xaml у меня есть элемент управления содержимым, как так ...
<ContentControl
Content="{Binding}"
ContentTemplate="{Binding Converter={StaticResource reportTemplateSelector}, Path=CurrReportType}"
Margin="0"
/>
Теперь в моем преобразователе я загрузить файл ReportingResources.xaml ресурсов со следующими строками кода
ResourceDictionary reportTemplate = new ResourceDictionary();
reportTemplate.Source = new Uri("/My.Namespace;component/Resources/ReportingResources.xaml", UriKind.Relative);
template = reportTemplate[Report_Style] as DataTemplate;
return template;
«Report_Style» на самом деле будет переменной, которая будет установлена в методе Convert преобразователя reportTemplateSelector до вызывания вышеуказанных строк.
Проблема заключается в том, что ReportingResources.xaml зависит от файла ресурсов GlobResources.xaml для другого содержимого. Как сделать содержимое из GlobResources.xaml доступным для файла ReportingResources.xaml в строках кода выше?
Спасибо за ваше время ...
I» Предполагая, что это библиотека, которую вы строите на основе того, что ваши ресурсные словари добавляются как ресурс, а не контент. Это верно? Его важная деталь, потому что в приложении вы должны использовать App.xaml для решения этой проблемы. – AnthonyWJones 2010-11-27 14:05:41