У меня проблемы с разрешением ресурсов из внешней сборки.
У меня есть файл Styles.xaml в проекте под названием Theme, и у меня есть стиль кнопки по умолчанию, который был объявлен следующим образом:
<Style TargetType="{x:Type Button}" x:Key="{x:Type Button}">
<!--Setters here-->
</Style>
И затем в отдельном проекте WPF (но в том же решении) у меня есть следующее в файле app.xaml:
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary
Source="/Theme;component/Styles.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
Затем в главном окне,Я объявляю кнопку по умолчанию без прикрепленного к ней стиля, например, так:
<Button Width="100" Height="100" />
В представлении конструктора появляется кнопка для выбора стиля из файла Styles.xaml, но когда я собираю и запускаю проектКнопка по умолчанию использует стандартный стиль кнопки.
Я проверил, чтобы файл Theme.dll был скопирован в каталог сборки WPF (и он есть), поэтому я не знаю, почему эточто происходит.
Интересно, что если я определю стиль кнопки следующим образом
<Style TargetType="{x:Type Button}" x:Key="MyStyle">
, а затем ссылаюсь на него непосредственно на кнопке в другом проекте, как этот
<Button Style={StaticResource MyStyle} Width="100" Height="100" />
Это поднимаетстиль в представлении дизайна и работает нормально, когда проект создается и выполняется.
Есть идеи?Любая помощь будет отличной!
Крис