Я уже давно читаю об этом, но не могу найти ответ, который может мне помочь, поэтому я надеюсь, что мне здесь повезет больше.
В моемУ меня есть библиотека, которая содержит много стилей для элементов управления.Эти стили используют ресурсы в качестве статического ресурса.Таким образом, «дерево ресурсов» в основном выглядит так:
- Theme.xaml
- SizeResources.xaml
- ColorResources.xaml
- ControlStyles.xaml
- Control1.xaml
- Control2.xaml
Theme.xaml объединяет SizeResources, ColorResources и ControlStyles.ControlStyles объединяют все xamls для определенных элементов управления.
Теперь в моем приложении я хотел бы применить эту тему, поэтому при запуске я добавляю Theme.xaml в мой Application.Current.Resources.MergedDictionaries.Что отлично работает, все ключи есть.Когда я сейчас пытаюсь использовать элементы управления, я получаю исключение, которое, например, не позволяет найти ресурс размера или цвета.Конкретный пример:
У меня есть специальная кнопка с цветом фона, который определен в ColorResources, мой ButtonStyle использует этот ресурс в качестве статического ресурса.Когда я использую эту кнопку в своем проекте приложения, я получаю исключение, что ресурс Background не может быть найден.Когда я изменяю статический ресурс на динамический ресурс в control1.xaml, тогда он работает.
Есть идеи, почему я не могу сделать это со статическим ресурсом?Насколько я понимаю, статика должна работать так же хорошо.