2010-04-05 16 views
14

Come posso verificare la stringa vuota nei triggerstringa vuota Arrivo trigger

<Trigger Property="Source" SourceName="ControlName" Value=""> 
    <Setter Property="Height" Value="0" TargetName="ControlName" /> 
</Trigger> 

Ho impostato l'altezza del controllo a 0 se la fonte del imageControl è stringa vuota o non impostato? Come posso farlo, Fondamentalmente Se l'immagine non è impostata, voglio nascondere il controllo dell'immagine nel modello.

Grazie in anticipo.

risposta

37

Kent è corretto che la fonte non è una stringa, ma se si dispone di una proprietà puntura per controllare contro di voi possibile utilizzare il valore String.Empty statica:

Value="{x:Static sys:String.Empty}" 

e lo spazio dei nomi SYS dichiarato come

xmlns:sys="clr-namespace:System;assembly=mscorlib" 
+0

Come potrei usarlo nel progetto silverlight, quindi statico non è supportato nel silverlight – Eldho

+0

Grazie per la dichiarazione dello spazio dei nomi, questo è quello che mi serviva :) – Drarig29

3

Se la proprietà non è impostata, il suo valore sarà null. Per specificare null in XAML si utilizza un'estensione di markup:

<Trigger Property="Source" SourceName="ControlName" Value="{x:Null}"> 
    <Setter Property="Height" Value="0" TargetName="ControlName" /> 
</Trigger> 
+0

grazie per i vostri commenti, ma voglio verificare la stringa vuota, significa "" o string.Empty, come posso controllare? –

+0

La proprietà 'Source' non è una' stringa', è una 'ImageSource', quindi quello che stai cercando di fare non ha senso. –

+0

Supponiamo di avere controlli come textblock, label con contenuto o proprietà Text che è di tipo string. allora come possiamo controllare? –