[Débutant] Accessibilité des animations
Bonjour,
Je débute avec silverlight, et je suis en plein dans les animations.
J'ai créer un Storybord qui marche bien avec des composants simples, mais je n'arrive pas à l'appliquer a une partie d'un template (il ne trouve pas le nom).
Voici le xaml qui marche
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| <UserControl x:Class="Mondial_Ados.Page"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="800" Height="300">
<Grid x:Name="LayoutRoot" Background="LightGray" ShowGridLines="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Canvas>
<TextBlock Text="bibi" x:Name="testPouet"/>
</Canvas>
<ListBox x:Name="Menu" Grid.Column="0" Grid.Row="1" Background="LightGreen" MouseEnter="Menu_MouseEnter">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding Img}"/>
<Canvas>
<HyperlinkButton x:Name="{Binding Text}" Canvas.Left="10" Content="{Binding Text}" Background="BlueViolet" Width="150" VerticalAlignment="Center" Click="HyperlinkButton_Click"/>
</Canvas>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Grid.Resources>
<Storyboard x:Name="ItemAnimation">
<DoubleAnimation Duration="00:00:01" SpeedRatio="4" From="10" To="30" Storyboard.TargetProperty="(Canvas.Left)"/>
</Storyboard>
</Grid.Resources>
</Grid>
</UserControl> |
avec son Behind code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
namespace Mondial_Ados
{
public partial class Page : UserControl
{
public Page()
{
InitializeComponent();
InitMenu();
}
public void InitMenu()
{
Menu.Items.Add(new ItemMenu("acc.png", "Accueil"));
Menu.Items.Add(new ItemMenu("acc.png", "Forum"));
Menu.Items.Add(new ItemMenu("acc.png", "Equipe"));
}
private void HyperlinkButton_Click(object sender, RoutedEventArgs e)
{
HyperlinkButton subject = sender as HyperlinkButton;
subject.Foreground = new SolidColorBrush(Color.FromArgb(255, 255, 255, 255)); /* white */
ItemAnimation.SetValue(Storyboard.TargetNameProperty, "testPouet");
ItemAnimation.Begin();
}
}
} |
Cependant quand je chercher a appliquer l'animation sur un item généré de cette facon :
Code:
1 2 3 4
| HyperlinkButton subject = sender as HyperlinkButton;
subject.Foreground = new SolidColorBrush(Color.FromArgb(255, 255, 255, 255)); /* white */
ItemAnimation.SetValue(Storyboard.TargetNameProperty, "Forum");
ItemAnimation.Begin(); |
Visual studio génère une exception au begin :
Citation:
Cannot resolve TargetName Forum.
Merci d'avance pour votre aide.