Frage

Ich habe Benutzersteuerelemente, die anderen Kontrollen. Ich möchte, dass, wenn ich eine Vordergrundfarbe für das Benutzersteuerelement setzen, werden alle untergeordneten Steuerelemente automatisch erben. Ich habe das gleiche Problem mit Schriftstil / Größe.

Kann ich diese Eigenschaften irgendwie zu Auto / erben? Ist dies möglich, alle subcontrols ohne eine Schleife zu setzen?

War es hilfreich?

Lösung

Sie können Sie Ressourcen Wörterbücher erstellen, um Standardstile global zu definieren.

Sie können auch ein Ressourcenverzeichnis verweisen oder einen Stil in einem Objekt definieren.

In jedem Fall werden diese Stile auf alle untergeordneten Objekte anwenden, die einen Stil haben nicht explizit definiert ...

Beispiel:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
    <!--Default styles that will apply to any object of the specified type (if it doesn't have style set locally)-->
    <Style TargetType="Label" >
        <Setter Property="FontWeight" Value="Bold"/>
        <Setter Property="Margin" Value="0"/>
        <Setter Property="Padding" Value="0"/>
    </Style>
</ResourceDictionary>

Andere Tipps

Schauen Sie in Stile und BasedOn Einstellungen.

Ich schrieb vor kurzem ein Beispiel für etwas ähnliches gelegen

scroll top