Sto cercando di creare un'applicazione wpf che consenta all'utente di modificare il tema in fase di esecuzione. Quello che ho fatto finora è creare un resourcedictionary con tutti i colori per l'applicazione definita in esso e quindi mi sto legando a questo dizionario in xaml.dizionari di risorse wpf di commutazione in fase di esecuzione
Di seguito è il codice che ho per commutare il dizionario risorse:
if (System.IO.File.Exists(fileName))
{
using (FileStream fs = new FileStream(fileName, FileMode.Open))
{
ResourceDictionary dic = (ResourceDictionary)XamlReader.Load(fs);
Resources.MergedDictionaries.Clear();
Resources.MergedDictionaries.Add(dic);
}
}
Questo codice funziona benissimo, e so che sta passando il dizionario risorse, ma non aggiorna gli elementi già visualizzati sullo schermo . La mia domanda è: come posso aggiornare o ricollegare lo schermo per tenere conto del nuovo dizionario delle risorse?
grazie
sm