я новичок в WPF, так что, возможно, это будет "нубский" вопрос, но я не могу найти на него ответ (и это кажется таким простым)...
хорошо, я программирую приложение WPF, и я хочу использовать что-то похожее на css для веб-страниц, поэтому я нашел ResourceDictionary и попытался его использовать...
У меня есть главное окно, в котором я создаю Frame, и при щелчке некоторый UserControl загружается в тот же самый Frame. Я включаю свой ResourceDictionary (root/style/Styles.xaml) в свое главное окно следующим образом:
<Window.Resources>
<ResourceDictionary x:Key="styles" Source="style/Styles.xaml" />
</Window.Resources>
в котором у меня есть:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style x:Key="ProductsRequired" TargetType="{x:Type Label}">
<Setter Property="Height" Value="28" />
...
Я не использую его в своем главном окне, но хочу использовать его в своих пользовательских элементах управления, которые загружаются в это главное окно, и я пытаюсь использовать его следующим образом:
<Label Name="product1" Style="{DynamicResource ProductsRequired}" />
Предупреждение, которое я получаю все время: Не удалось разрешить ресурс «ProductsRequired».
Я даже пытался включить стили в свой UserControl.
<UserControl.Resources>
<ResourceDictionary x:Key="styles" Source="../style/Styles.xaml" />
</UserControl.Resources>
и ничего не происходит...
Что ж, мой вопрос длинный, но я хотел внести ясность... :)
P.S. вся эта логика работает в коде С# кстати
private ResourceDictionary myStyles = new ResourceDictionary();
Style ProductsRequired = myStyles["ProductsRequired"] as Style;
product1.Style = ProductsRequired;