Как оживить окно? - PullRequest
       26

Как оживить окно?

5 голосов
/ 16 апреля 2009

С WPF, как мне анимировать положение окна. Я попытался просто анимировать свойства Left / Top, но это не сработало. Кто-нибудь знает как?

Спасибо!

Ответы [ 3 ]

9 голосов
/ 16 апреля 2009

Просто создайте раскадровку для окна, которое вы пытаетесь анимировать.

Вот пример для окна с именем w1:

<Window.Triggers>
  <EventTrigger RoutedEvent="Window.Loaded">
    <EventTrigger.Actions>
      <BeginStoryboard>
        <Storyboard BeginTime="0" Duration="Forever">
          <DoubleAnimation Storyboard.TargetName="w1" Storyboard.TargetProperty="(Window.Top)" From="0" To="300" AutoReverse="true" BeginTime="0:0:0" Duration="0:0:1" RepeatBehavior="Forever"/>
          <DoubleAnimation Storyboard.TargetName="w1" Storyboard.TargetProperty="(Window.Left)" From="0" To="400" AutoReverse="true" BeginTime="0:0:0" Duration="0:0:2" RepeatBehavior="Forever"/>
        </Storyboard>
      </BeginStoryboard>
    </EventTrigger.Actions>
  </EventTrigger>  
</Window.Triggers>
7 голосов
/ 20 марта 2013

Это сделает эффект затухания при отображении окна:

<Window.Triggers>
    <EventTrigger RoutedEvent="Loaded">
        <BeginStoryboard>
            <Storyboard Duration="00:00:3" Storyboard.TargetProperty="Opacity">
                <DoubleAnimation From="0" To="1"/>
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
</Window.Triggers>
0 голосов
/ 16 апреля 2009

Может быть, вы можете попробовать добавить к нему StoryBoard, используя Expression Blend. Вы можете управлять временной шкалой изменения свойства окна в Blend и просто активировать анимацию в коде .cs.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...