枢轴应用程序中的动画控件(WP7)

MSi*_*icc 1 c# pivot storyboard windows-phone-7 windows-phone

我在Xaml中创建了一个支点.枢轴有4个项目.

在每个数据透视图上都有一个通过以下代码创建的故事板动画:

    {  
        var myStoryBoard = new Storyboard();  
        myStoryBoard.RepeatBehavior = RepeatBehavior.Forever;
        var animation = new ObjectAnimationUsingKeyFrames(); 

        Storyboard.SetTarget(animation, myAnim1);  
        Storyboard.SetTargetProperty(animation, new PropertyPath("Source"));  

        myStoryBoard.Children.Add(animation);  

        // try to catch my images autmatically 

        for (int i = 1; i <= 12; i++)  
        {  
           var keyframe = new DiscreteObjectKeyFrame  
           {  
              KeyTime = KeyTime.FromTimeSpan(TimeSpan.FromMilliseconds(750 * i)),
              Value = String.Format("/Images/img_{0:D2}.jpg", i)  
           };  

            animation.KeyFrames.Add(keyframe); 
        }  
        Resources.Add("myAnimation", storyboard);         } 
Run Code Online (Sandbox Code Playgroud)

如果选择了枢轴项目,而所有其他故事板都没有播放,如何设置故事板的开头才能启动?

我尝试设置它Pivot_SelectionChanged();但没有成功.

Mat*_*Vdh 7

我认为您必须在页面的加载方法中创建所有故事板,然后显示或隐藏故事板.

    public MainPage()
    {
        // Create storyboard1
        // create storyboard2 ...
    }
Run Code Online (Sandbox Code Playgroud)

然后用Pivot_SelectionChanged方法显示或隐藏你的故事板

    private void Pivot_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        switch (((Pivot)sender).SelectedIndex)
        {
            case 0:
                storyboard1.Begin();
                storyboard2.Stop();
                break;
            case 1:
                storyboard2.Begin();
                storyboard1.Stop();
                break;
        }
    }
Run Code Online (Sandbox Code Playgroud)