Frage

Ich habe Probleme erstreckt eines meines Stil, dass ich in dem Windows-Wörterbuch definiert habe. Allein, so scheint es, den Stil meiner Kontrollen anzuwenden, wie erwartet. Wenn jedoch versucht, den Stil in einem meinem Benutzersteuerelement zu erweitern, die basedOn Eigenschaft verwendet, überschreibt es einfach die wichtigsten und alle Basen Arten verschwinden. Hier ein Beispiel:

In einem Ressourcenverzeichnis namens dict1.xaml:

<Style TargetType="{x:Type Button}">
    <Setter Property="Background" Value="Pink"/>
</Style>  

Im Haupt window.xaml:

<Window.Resources>
    <ResourceDictionary Source="dict1.xaml"/>
</Window.Resources>

In einer Benutzersteuerung namens userControl1.xaml:

<UserControl.Resources>
    <Style  BasedOn="{StaticResource {x:Type Button}}" 
            TargetType="{x:Type Button}">
        <Setter Property="FontWeight" Value="Bold"/>
    </Style>
</UserControl.Resources>

Der Stil in der Benutzersteuerung überschreibt einfach mit dem im Ressourcenverzeichnis und die Schrift ist fett. Wenn ich den Stil in der Steuer Benutzer entfernen, der Stil in den Wörterbuch Kicks in und der Hintergrund rosa. Ich will beides.

Alle Ideen, was ich falsch hier?

Dank.

War es hilfreich?

Lösung

Sie müssen entweder das Wörterbuch zu den Usercontrol-Ressourcen hinzuzufügen, oder fügen Sie App.xaml Ressourcen.

Wie es ist, kann die Usercontrol nicht lösen, dass Static -. Es ist im Rahmen des Usercontrol, nicht das Fenster, wenn der Sinn macht

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top