2011-10-25 12 views
12

chcę mój obraz nieruchomość Widoczność ustawiona na ukryte, gdy moja granica pole tabeli[Multi] Instrukcja DataTrigger "OR"?

Weblink = NULL **OR** Weblink = "" 

Z MultiDataTrigger można przetestować kilka warunków w następującej logiki:

"IF FieldA = 1 **AND** FieldB = 2 THEN" 

Ale to, co jest mi potrzebne

"IF FieldA = 1 **OR** FieldA = 2 THEN" 

Oto część mojego xaml, który działa tylko wtedy, gdy Weblink = ""; gdy Weblink = NULL mój obraz pozostaje widoczny

<Image.Style> 
    <Style TargetType="{x:Type Image}"> 
     <Style.Triggers> 
      <DataTrigger Binding="{Binding Weblink}" Value="Null"> 
       <Setter Property="Visibility" Value="Hidden" /> 
      </DataTrigger> 
      <DataTrigger Binding="{Binding Weblink}" Value=""> 
       <Setter Property="Visibility" Value="Hidden" /> 
      </DataTrigger> 
     </Style.Triggers> 
    </Style> 
</Image.Style> 

Z góry dziękuję! Spoelle

Odpowiedz

6

To, co napisałeś, jest równe Weblink == "Null", ale potrzebujesz Weblink == null.

Wypróbuj Value="{x:Null}" w DataTrigger, gdy właściwość Weblink wraca z wartością null.

+0

Dzięki, działa poprawnie! Jestem nowy w Xaml; nie wiedział {x: Null} – Spoelle

3

Chciałbym zasugerować używając rozszerzenia x:Null znaczników, a dla zachowania jasności jednoznacznie określić pusty ciąg za pomocą rozszerzenia x:Static znaczników:

<DataTrigger Binding="{Binding Weblink}" Value="{x:Null}"> 
    <Setter Property="Visibility" Value="Hidden" /> 
</DataTrigger> 
<DataTrigger Binding="{Binding Weblink}" Value="{x:Static System:String.Empty}" > 
    <Setter Property="Visibility" Value="Hidden" /> 
</DataTrigger> 

nadzieję, że to pomaga!