Я пришел из веб-разработки и WinForms в WPF, и, возможно, я еще не понял концепцию.
Я могу определить общие стили для моего приложения в app.xaml. Например, я определил стиль для всех моих элементов управления ленты в этом файле.
Затем я попробовал Microsoft Blend и наткнулся на ResourceDictionary, который является чем-то вроде Resource File .resx, который я знал по WinForms.
Но, как я вижу, невозможно смешать эти два понятия. Например, следующий код xaml не будет работать, потому что ResourceDictionary должен быть единственным дочерним элементом.
<Application x:Class="Wpf.MyApplication.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:ribbon="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
StartupUri="MyMainWindow.xaml">
<Application.Resources>
<!-- Resources scoped at the Application level should be defined here. -->
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Styles/RibbonStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
<BitmapImage x:Key="IconDokumentNeu" >Images/NewDocument_32x32.png</BitmapImage>
<SolidColorBrush x:Key="LightGrayBrushKey">WhiteSmoke</SolidColorBrush>
</ResourceDictionary>
<Style TargetType="{x:Type ribbon:RibbonWindow}">
<Setter Property="Icon" Value="../time2_32.png" />
<Setter Property="TextOptions.TextFormattingMode" Value="Display" />
</Style>
</Application.Resources>
</Application>
Кажется, я не совсем понял концепцию. Может быть, вы можете мне помочь, почему это невозможно и как я могу использовать общие стили рядом с ResourceDictionary.