There is a Styles.xaml file, it has several ResourceDictionary that have x: Key .
I need in C # code to assign an Application.Current.Resources resource with a specific x: Key .
How can this be done?
It works for me like this:
var rd = new ResourceDictionary { Source = new Uri("pack://application:,,,/Styles.xaml") }; Resources.MergedDictionaries.Add((ResourceDictionary)rd["Style_Quad"]); Added this code in App.xaml.cs to the OnStartup method
Answer :
App.xaml
<ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="Styles.xaml"/> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> Styles.xaml
<ResourceDictionary x:Key="Style_Quad"> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="Style_Quad.xaml"/> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> <ResourceDictionary x:Key="Style_Ellipse"> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="Style_Ellipse.xaml"/> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> C #
ResourceDictionary style = (ResourceDictionary)Application.Current.Resources["Style_Quad"]; Application.Current.Resources.MergedDictionaries.Add(style); Source: https://ru.stackoverflow.com/questions/798672/
All Articles
Styles.xaml- Andrey NOPStyles.xaml? Those. We do not takeStyles.xamlaccording to theStyle_Quadkey, but immediately take the resource[1] Style_Quad.xaml- Andrey NOPStyle_QuadkeyStyle_Quadwill several hidden consumedResourceDictionary? - Andrei NOP