私は Xaml 機能のいくつかに比較的慣れていません..
塗りつぶされたバーに加えて進行状況インジケーターを示す矢印が上にあるこの進行状況バーを実装しようとしています。ポリゴンを使用して矢印を表示し、X 方向に移動して progrssBar の上に表示するだけです。ただし、バインディングは以下に適用されます。
Binding PlaybackProgressTip
これは double であり、コードがクラッシュする原因となっています。TranslateTransform.X を double 値にバインドする方法を教えてもらえますか、それとも何か他のことをする必要がありますか?
<Grid x:Name="grid" VerticalAlignment="Top" Margin="0,34,0,0" Grid.Row="1" Height="18" d:LayoutOverrides="VerticalAlignment, Width, VerticalMargin">
<ProgressBar x:Name="Progress" Maximum="1" Value="{Binding PlaybackProgress}" VerticalAlignment="Center" Background="LightGray" Height="6" Visibility="Collapsed" IsIndeterminate="False" Foreground="DarkBlue"/>
<Image x:Name="ProgressComplete" Source="/Images/checkbox.png" Height="18" VerticalAlignment="Center" HorizontalAlignment="Center" Visibility="Collapsed" Stretch="Uniform"/>
<Polygon Points="0,0 8,0, 4,5" Stroke="Black" Fill="Black" Margin="0,-2,0,0">
<Polygon.RenderTransform>
<TransformGroup>
<TranslateTransform x:Name="ProgressPositionTranslate" X="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=PlaybackProgressTip}" />
</TransformGroup>
</Polygon.RenderTransform>
</Polygon>
</Grid>