Bonjour à tous,

Mon problème est pourtant simple mais je n'arrive pas à trouver la solution...

Ce que je souhaite : J'ai 2 listbox. Quand je clique sur une listboxitem de la listbox1, ça fait apparaitre listbox2 et ça déclenche une animation sur la listbox2 (un déplacement vertical de haut en bas de listbox2).

Mon problème : Ce que j'ai fait c'est que dans le dans le ControlTemplate des listboxitems de listbox1 j'ai ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
            <ControlTemplate.Triggers>
                <EventTrigger RoutedEvent="MouseEnter">
                    <BeginStoryboard Storyboard="{StaticResource RollOverAnim}"/>
                    <BeginStoryboard Storyboard="{StaticResource ListAppliAnim}"/>
                </EventTrigger>
                <EventTrigger RoutedEvent="MouseLeave">
                    <BeginStoryboard Storyboard="{StaticResource RollOutAnim}"/>
                </EventTrigger>
            </ControlTemplate.Triggers>
RollOverAnim et RollOutAnim font juste un effet de zoom sur les listboxitems de listbox1. Voici la définition de ListAppliAnim (qui pose problème)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
        <Storyboard x:Key="ListAppliAnim">
            <DoubleAnimation  Duration="0:0:0.1" AutoReverse="False" Storyboard.TargetName="ApplicationList" Storyboard.TargetProperty="(Canvas.Top)" From="0" To="200" />
        </Storyboard>
où ApplicationList est listbox2 (la listbox doit être "animée")

Quand j'exécute l'application j'ai ce message d'erreur :
InvalidOperationException was unahandled : 'ApplicationList' name cannot be found in the name scope of 'System.Windows.Controls.ControlTemplate'.
Le souci serait que je défini explicitement le nom de ma listbox dans mes ressources et que je ne peux pas y accéder directement.

Je suis manifestement parti sur une mauvaise piste. Auriez vous une autre piste à me conseiller ?

Merci !