Я новичок в WPF, так что, возможно, это будет вопрос "нуб", но я не могу найти ответ на него (и это кажется таким простым) ...
Хорошо, я программирую приложение WPF, и я хочу использовать что-то похожее на CSS для веб-страниц, поэтому я нашел ResourceDictionary и попытался использовать его ...
У меня есть главное окно, в котором я создаю фрейм, и по клику некоторые UserControl загружаются в тот же фрейм. Я включаю мой 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. вся эта логика работает в коде C # кстати
private ResourceDictionary myStyles = new ResourceDictionary();
Style ProductsRequired = myStyles["ProductsRequired"] as Style;
product1.Style = ProductsRequired;