キャンバス内のラベルをキャンバスの右からキャンバスの左+ラベルのサイズまで無限にアニメーション化したいと思います。つまり、私のラベルは右側から来て、最後まで左側に移動し、再び繰り返されます。
これは私のxamlです:
<Canvas Margin="0, 0, 0, 20" Name="CanMain2" Height="30" Width="350" >
<Label x:Name="LabelNameSong" Content="Hello" >
<Label.Resources>
<Storyboard x:Key="Scroll">
<DoubleAnimation To="{Binding ActualWidth, ElementName=LabelNameSong}" Duration="00:00:10"
Storyboard.TargetProperty="(Canvas.Right)"
Storyboard.TargetName="LabelNameSong"
RepeatBehavior="Forever"/>
</Storyboard>
</Label.Resources>
<Label.Triggers>
<EventTrigger RoutedEvent="Label.Loaded">
<BeginStoryboard Storyboard="{StaticResource Scroll}" />
</EventTrigger>
<EventTrigger RoutedEvent="Label.SizeChanged">
<BeginStoryboard Storyboard="{StaticResource Scroll}" />
</EventTrigger>
</Label.Triggers>
</Label>
</Canvas>
アプリを起動するとすぐにクラッシュし、デバッガーは次のように言います:
「System.Windows.Media.Animation.DoubleAnimation」を使用して「System.Windows.Controls.Label」の「Right」プロパティをアニメーション化できません。詳細については、内部例外を参照してください。
私はxamlが初めてで、これを機能させることができないようです。