2016-04-13 2 views
1

У меня есть код что-то вроде этого:Возможно ли это, чтобы оживить path.Data

<Path x:Name="arrow" StrokeThickness="3" Stroke="Black" Data="M34,115 C45,106 91,119 105,112 119,105 172,75.004352 188,82.003591" /> 

, что я хочу, чтобы анимировать свойство данных пути. Я ищу это из последних двух дней, не нашел решения. То, что я на самом деле хочу, это показать путь по частям.

Есть ли у кого-нибудь идеи?

+0

Обновить, если мой ответ помогает –

+0

Я мог бы представить ObjectAnimationUsingKeyFrames с разными значениями для свойства Data. – Clemens

ответ

7

«что я на самом деле хочу, чтобы показать путь по кусочкам»

ли вы имеете в виду что-то вроде этого?

<Grid VerticalAlignment="Center" HorizontalAlignment="Center" > 
    <Grid.Resources> 
     <Storyboard x:Key="CWTrace"> 
      <!-- To run opposite direction, just swap the 'From' and 'To' values. --> 
      <DoubleAnimation BeginTime="00:00:0.5" RepeatBehavior="Forever" 
         Storyboard.TargetName="arrow" 
         Storyboard.TargetProperty="StrokeDashOffset" 
         Duration="0:0:5" From="100" To="0"/> 
     </Storyboard> 
    </Grid.Resources> 
    <Grid.Triggers> 
     <EventTrigger RoutedEvent="FrameworkElement.Loaded"> 
      <BeginStoryboard Storyboard="{StaticResource CWTrace}"/> 
     </EventTrigger> 
    </Grid.Triggers> 
    <Path x:Name="arrow" 
      StrokeDashOffset="0" StrokeDashArray="100" 
      StrokeThickness="3" Stroke="Black" 
      Data="M34,115 C45,106 91,119 105,112 119,105 172,75.004352 188,82.003591"/> 
</Grid> 

enter image description here

Очевидно удалить RepeatBehavior за один раз Аним а, и повозиться со значениями, чтобы получить именно то, что вы после этого. Приветствия.

+0

Да ... позвольте мне попробовать, а затем не обратимся к вам – tabby

+0

Спасибо, что это сработало для каждого Data, но вам просто нужно настроить StrokeDashArray и From value .... – tabby

+0

@tabby Я знаю. Рад, что вам понравилось возиться. :) –

Смежные вопросы