2012-07-20 15 views
21

In meinem Projekt gibt es einen benutzerdefinierten Stil für Textfeld. Es ist definiert als:erben Stil von Standard-Stil

<Style TargetType="TextBox"/> 

So wird es standardmäßig auf alle untergeordneten Textfeldsteuerelemente angewendet.

Ich muss einen anderen Stil erstellen, der auf Standardstil basiert. Aber wie gebe ich im BasedOn-Attribut an, dass mein neuer Stil den Standardstil verwenden soll?

Antwort

43

die Art der Steuerung Verwenden Sie

BasedOn="{StaticResource {x:Type TextBox}}" 

Voll Beispiel verlängern möchten:

<Style x:Key="NamedStyle" TargetType="TextBox" BasedOn="{StaticResource {x:Type TextBox}}"> 
    <Setter property="Opacity" value="0.5" /> 
</Style> 
+0

Sie nicht x festlegen müssen: Taste, wenn Sie weitere Änderungen (Opazität in Ihrem Fall anwenden möchten) automatisch (ohne Stilname). – honzakuzel1989

+1

@ honzakuzel1989 das ist wahr in der Tat. Es hängt vom Anwendungsfall ab, ob der Schlüssel gesetzt werden soll. – Aphelion

+0

Wie wäre es in uwp, wo x: Typ nicht existiert? – bunkerdive