Bonjour à tous,

Je voudrais savoir s'il est possible de sortir les triggers d'un controltemplate ; je m'explique. Dans un premier temps j'ai ceci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<Style x:Key="MyStyle1" TargetType="{x:Type MonControl}">
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate TargetType="{x:Type MonControl}">
        <Path Stoke="3" x:Key="MonPath">
           ...
        </Path
        <ControlTemplate.Triggers>
           <Trigger Property="Affiche" Value="False">
             <Setter TargetName="MonPath" Property="Visible" Value="Hidden"/>
           </Trigger>
        </ControlTemplate.Triggers>
    </Setter.Value>
  </Setter>
</Style>
Le code ici est assez simple, en fonction de la propriété Affiche de MonControl, le Path MonPath est affiché ou non.

Et maintenant je voudrais sortir la partie Trigger dans un style à part et l'appliquer à MonPath, Bref un truc du genre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
<Style x:Key="MonStyleAnimation">
  <Style.Triggers>
    <DataTrigger Binding="{Binding Affiche}" Value="False"> 
      <Setter Property="Path.Visibility" Value="Hidden"/>
    </DataTrigger>
  </Style.Triggers>
</Style>
 
<Style x:Key="MyStyle1" TargetType="{x:Type MonControl}">
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate TargetType="{x:Type MonControl}">
        <Path Stoke="3" x:Key="MonPath" Style="{StaticResource MonStyleAnimation}">
           ...
        </Path>
      </ControlTemplate>
    </Setter.Value>
  </Setter
</Style>
Je dois dire que cela fait pas mal de temps que je planche dessus.
Quelqu'un aurait-il une idéee ?