Ich habe eine Klassenbibliothek, die ein ziemlich großes Ressourcenwörterbuch enthält, und ich denke, dass die Organisation meines Projekts verbessert werden könnte, indem es in kleinere spezifischere Dateien z. B. für die Kontrollstile für die Farben ect aufgeteilt wird. Mein Problem ist, dass einige der Wörterbücher die Felder anderer verwenden (z. B. verwenden die Steuerstile die Farben).Wie kann ich ein Ressourcenwörterbuch in zwei teilen?
Meine Frage ist, wie kann ich ein Ressourcenwörterbuch in zwei teilen und dann ein Wörterbuch in einem anderen verwenden? Hier
ist, was (ein Teil) die volle Wörterbuch sieht aus wie (nicht getrennt)
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:system="clr-namespace:System;assembly=mscorlib">
<SolidColorBrush x:Key="backgroundColour" Color="#FF1D1D1D"/>
<SolidColorBrush x:Key="foregroundColour" Color="#FFEAEAEA"/>
<SolidColorBrush x:Key="textColour" Color="White"/>
<SolidColorBrush x:Key="borderColour" Color="#FFF31515"/>
<SolidColorBrush x:Key="mouseOverBackgroundColour" Color="#E59400"/>
<SolidColorBrush x:Key="mouseOverForegroundColour" Color="White"/>
<SolidColorBrush x:Key="mousePressedBackgroundColour" Color="OrangeRed"/>
<SolidColorBrush x:Key="mousePressedForegroundColour" Color="White"/>
<Style x:Key="DriveButtonStyle" TargetType="{x:Type Button}">
<Setter Property="Background" Value="{DynamicResource backgroundColour}" />
<Setter Property="Foreground" Value="{DynamicResource foregroundColour}" />
<Setter Property="FontSize" Value="16" />
<Setter Property="FontFamily" Value="Calibri Light" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Margin" Value="2" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="{TemplateBinding Background}" BorderBrush="Gray" BorderThickness="1" >
<ContentPresenter x:Name="MyContentPresenter" Content="{TemplateBinding Content}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource mouseOverBackgroundColour}" />
<Setter Property="Foreground" Value="{DynamicResource mouseOverForegroundColour}" />
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource mousePressedBackgroundColour}" />
<Setter Property="Foreground" Value="{DynamicResource mousePressedForegroundColour}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="DriveImageStyle" TargetType="{x:Type Image}">
<Setter Property="Width" Value="30" />
<Setter Property="Height" Value="30" />
<Setter Property="Margin" Value="2" />
<Setter Property="HorizontalAlignment" Value="Left" />
</Style>
<Style x:Key="DriveLabelStyle" TargetType="{x:Type Label}">
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="HorizontalAlignment" Value="Center" />
<Setter Property="Foreground" Value="{DynamicResource foregroundColour}" />
<Setter Property="FontSize" Value="15" />
<Setter Property="FontFamily" Value="Calibri Light" />
</Style>
Wenn Sie nicht wissen, wie Ihr Wörterbuch aussieht, ist es schwierig, eine definitive Antwort zu geben, aber haben Sie sich mit '' beschäftigt? –
Shaamaan
Ich werde in Merged Dictionaries suchen. Ich dachte, sie sollten dort verwendet werden, wo Teile von zwei * separaten * Wörterbüchern verwendet werden sollen. Ich habe ein Beispiel des Wörterbuchs hinzugefügt, das ich zu teilen versuche. – Timmoth
Okay, egal, danke für die Hilfe Shaamaan. Ich denke, ich habe es jetzt funktioniert. MergedDictionaries sind der Schlüssel ... – Timmoth