2010-07-28 9 views
1

J'ai une image que je veux faire quand l'utilisateur passe la souris dessus, une autre image à côté sera affichée.WPF Style Triggers d'un autre contrôle

Le code ci-dessous, ne fonctionne pas:

  <Image Source="volumen.png"> 
       <Image.Style> 
        <Style> 
         <Style.Triggers> 
          <Trigger Property="IsMouseOver" Value="True"> 
           <Setter TargetName="bar_volume" Property="Visibility" Value="Visible" /> 
          </Trigger> 
         </Style.Triggers> 
        </Style> 
       </Image.Style> 
      </Image> 
      <Image Source="volumen_bar.png" Name="bar_volume" Visibility="Hidden" /> 

Toute idée comment puis-je définir une autre propriété setter de commande d'un autre déclencheur de commande?

10x.

Répondre

4

Que diriez-vous comme ceci:

<UserControl.Resources>  
     <local:BoolToVisibilityConverter x:Key="BoolToVisibilityConverter"/> 
</UserControl.Resources>  
<Image Name="firstImage" Source="volumen.png"/> 
<Image Source="volumen_bar.png" Name="bar_volume" Visibility="{Binding IsMouseOver,ElementName=firstImage, Mode=OneWay, Converter={StaticResource BoolToVisibilityConverter}}" /> 

puis utilisez cette valueconverter pour elle:

public class BoolToVisibilityConverter:IValueConverter 
{ 
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     return (bool)value ? Visibility.Visible : Visibility.Hidden; 
    } 
    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     throw new NotSupportedException(); 
    } 
} 
+0

Si je dois écrire un code je peux utiliser MouseOver et définir la visibilité de l'objet .. Je veux que ce soit purement XAML. Mais merci quand même. – aviv

+0

Le problème est que les deux images ne peuvent pas se voir l'une l'autre. Donc, si vous voulez ce comportement, vous devez placer les deux images à l'intérieur d'un conteneur et laisser le style Conteneurs définir le style - problème encore une fois que vous pouvez seulement 'voir' les propriétés du conteneur dans le style du conteneur. – Goblin