2009-07-11 5 views

Antwort

2

können Sie immer eine Ressource wie folgt erstellen:

<Setter x:Key="setter1" Property="Content" Value="Not Connected" /> 

Sie können jedoch nicht Ressourcenschlüssel als Objekt in einer Sammlung verwenden.

könnten Sie setzen irgendwo

<SomeObject Setter="{StaticResource setter1}"/> 

aber Setters sind Sammlungen fast immer gegeben, und man kann nicht Ressourcenschlüssel in XAML Sammlung Syntax hinzuzufügen.

Das einzige Szenario, das ich davon unterstützen würde denken, kann dies eine SetterBaseCollection Ressource mit jenen zwei identischen Paaren von Setters zu schaffen wäre,

<SetterBaseCollection x:Key="settersKey"> 
    <Setter Property="Label.Content" Value="Not Connected" /> 
    <Setter Property="Label.Foreground" Value="Red" /> 
</SetterBaseCollection> 

<Style TargetType="{x:Type Label}"> 
    <Style.Triggers> 
     <DataTrigger Binding="{Binding}" Value="{x:Null}" Setters="{StaticResource settersKey}"/> 

    // ... 

    </Style.Triggers> 
</Style> 

aber die DataTrigger.Setters Sammlung Eigenschaft ist nur lesbar und kann nicht eingestellt werden von Xaml.

Also wäre die Antwort nein.

1

In diesem speziellen Fall wäre es am besten, die nicht verbundene Groß-/Kleinschreibung als Standard (ohne Bedingung) festzulegen und nur einen DataTrigger für den einen Fall zu erstellen, der anders ist.

Verwandte Themen