анимация Silverlight не работает - PullRequest
       1

анимация Silverlight не работает

2 голосов
/ 13 сентября 2011

Это первый раз, когда я создаю анимацию Silverlight.Последние несколько дней я изо всех сил пытался создать простую анимацию, но просто не мог заставить ее работать.Я не могу поверить, почему это так сложно.

Xaml:

<UserControl x:Class="BuzzLifeAppsSilverlight.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    d:DesignHeight="300" d:DesignWidth="400">
    <UserControl.Resources>
        <Storyboard x:Name="Storyboard1" AutoReverse="True" RepeatBehavior="Forever" BeginTime="1">
            <DoubleAnimation Duration="0:0:2" To="-332" Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateX)" Storyboard.TargetName="button1" d:IsOptimized="True"/>
            <DoubleAnimation Duration="0:0:2" To="-12" Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateY)" Storyboard.TargetName="button1" d:IsOptimized="True"/>
        </Storyboard>
    </UserControl.Resources>

    <Canvas x:Name="LayoutRoot" Background="White">
        <Button Canvas.Left="235" Canvas.Top="136" Content="Button" Height="23" Name="button1" Width="75" RenderTransformOrigin="0.5,0.5" >
            <Button.RenderTransform>
                <CompositeTransform/>
            </Button.RenderTransform>
        </Button>
    </Canvas>
</UserControl>

Код:

public MainPage()
{
    InitializeComponent();

    Storyboard1.Begin();
}

1 Ответ

4 голосов
/ 13 сентября 2011

Удалите объявление BeginTime в вашей раскадровке или измените его на другое значение (например, 0: 0: 1).

Значение 1 означает, что анимация должна начаться в одномчас, установив его на 0: 0: 1, запустит анимацию через 1 секунду.

Также запустите анимацию, когда MainPage будет загружен и добавлен в визуальное дерево, например так ...

public MainPage(){
  InitializeComponent();
  this.Loaded += new System.Windows.RoutedEventHandler(MainPage_Loaded);
}

private void MainPage_Loaded(object sender, System.Windows.RoutedEventArgs e){
  Storyboard1.Begin();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...