以下のような進行状況バーを作成しようとしています。これは不確定な効果であるため、アニメーションが何度もループします。
私が抱えている問題は、どこから始めればよいかということです。
これに関する私の主なロジックは、長方形を別の長方形の上に重ねてから、ある種のアニメーションを適用して上の長方形を動かし、同じことをループする必要があるということです。
Blend のストーリーボードでこれを行うことができますが、これがこれを達成するための最良の方法だとは思いません。
誰かが私を正しい方向に向けることができますか?
編集:
作業中の XAML:
<Style x:Key="{x:Type ProgressBar}"
TargetType="{x:Type ProgressBar}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ProgressBar}">
<Grid MinHeight="14"
MinWidth="200"
Background="#FFF0F0F0">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Determinate" />
<VisualState x:Name="Indeterminate">
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="00:00:00"
Storyboard.TargetName="PART_Indicator"
Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="00:00:00">
<DiscreteObjectKeyFrame.Value>
<SolidColorBrush>#FFF0F0F0</SolidColorBrush>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border x:Name="PART_Track"
CornerRadius="0"
BorderThickness="1">
<Border.BorderBrush>
<SolidColorBrush Color="#FFF0F0F0" />
</Border.BorderBrush>
</Border>
<Border x:Name="PART_Indicator"
CornerRadius="0"
BorderThickness="0"
HorizontalAlignment="Left"
Background="#FF4B8BC2"
Margin="0,-1,0,1">
<Border.BorderBrush>
<SolidColorBrush Color="#FFD7D7D7" />
</Border.BorderBrush>
<Grid ClipToBounds="True"
x:Name="Animation">
<Border x:Name="PART_GlowRect"
Width="100"
HorizontalAlignment="Left"
Background="#FF4B8BC2"
Margin="-100,0,0,0" />
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="#FFF0F0F0" />
</Setter.Value>
</Setter>
<Setter Property="Foreground">
<Setter.Value>
<SolidColorBrush Color="#FF4B8BC2" />
</Setter.Value>
</Setter>
</Style>