Xamlreader бросает при загрузке generic.xaml для объединения справочных словарей ресурсов
-
25-10-2019 - |
Вопрос
Попытка загрузить generic.xaml в код, но он бросает xamlparseexception. Код следующим образом:
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);
Идея состоит в том, чтобы объединить словарь ресурсов в базовой части. Затем полученные страницы могут использовать стили, цвета, кисти и т. Д. Из их базового класса с помощью {StaticResource DarkBrush}
Например.
Но приведенный выше код бросает:
'', шестнадцатеричное значение 0x0c, является недействительным символом. Строка 1, позиция 1.
Файл generic.xaml был создан в VS2010 стандартным способом. Пытался установить действие по сборке ресурса, но это тоже не сработало ...
Я получил Пример кода от Microsoft. Там он использовался для загрузки страницы. Любая помощь будет очень оценена.
Решение
Uri uri = new Uri("Themes/Generic.xaml", UriKind.RelativeOrAbsolute);
var resDict = Application.LoadComponent(uri) as ResourceDictionary;
this.Resources.MergedDictionaries.Add(resDict);
Не связан с StackOverflow