Question

Essayer de charger generic.xaml dans le code, mais il jette un XamlParseException. Code comme suit:

Uri uri = new Uri("Themes/Generic.xaml", UriKind.Relative);
StreamResourceInfo info = Application.GetResourceStream(uri);
System.Windows.Markup.XamlReader reader = new System.Windows.Markup.XamlReader();

ResourceDictionary resdict = (ResourceDictionary)reader.LoadAsync(info.Stream);

this.Resources.MergedDictionaries.Add(resdict);

L'idée est de fusionner un dictionnaire de ressources dans un basepage. Ensuite, les pages dérivées peuvent utiliser des styles, des couleurs, des pinceaux, etc de leur classe de base en utilisant {StaticResource DarkBrush} par exemple.

Mais le code ci-dessus jette:

'', valeur hexadécimale 0x0C, est un caractère non valide. Ligne 1, position 1.

Le fichier a été créé en generic.xaml VS2010 la manière standard. Essayé de jeu Action de génération de ressources, mais cela ne fonctionne pas non plus ...

Je suis l'exemple de code de Microsoft. Là, il a été utilisé pour charger une page. Toute aide serait grandement appréciée.

Était-ce utile?

La solution

        Uri uri = new Uri("Themes/Generic.xaml", UriKind.RelativeOrAbsolute);
        var resDict = Application.LoadComponent(uri) as ResourceDictionary;
        this.Resources.MergedDictionaries.Add(resDict);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top