ConnectedAnimationService 类

定义

表示一个服务,该服务提供用于显示 ConnectedAnimation 的属性和方法。

public ref class ConnectedAnimationService sealed
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ConnectedAnimationService final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ConnectedAnimationService
Public NotInheritable Class ConnectedAnimationService
继承
Object Platform::Object IInspectable ConnectedAnimationService
属性

示例

提示

有关详细信息、设计指南和代码示例,请参阅 连接的动画

WinUI 3 库应用包括大多数 WinUI 3 控件、特性和功能的交互式示例。 通过 Microsoft Store 获取应用,或在 GitHub 上获取源代码。

此示例演示如何在导航期间对两个页面之间的图像进行动画处理。

SourcePage.xaml/SourcePage.xaml.cs

<Image x:Name="SourceImage"
       Width="200"
       Height="200"
       Stretch="Fill"
       Source="Assets/StoreLogo.png" />
private void NavigateToDestinationPage()
{
    ConnectedAnimationService.GetForCurrentView().PrepareToAnimate("image", SourceImage);
    Frame.Navigate(typeof(DestinationPage));
}

DestinationPage.xaml/DestinationPage.xaml.cs

<Image x:Name="DestinationImage"
       Width="400"
       Height="400"
       Stretch="Fill"
       Source="Assets/StoreLogo.png" />
protected override void OnNavigatedTo(NavigationEventArgs e)
{
    base.OnNavigatedTo(e);

    ConnectedAnimation imageAnimation = 
        ConnectedAnimationService.GetForCurrentView().GetAnimation("image");
    if (imageAnimation != null)
    {
        imageAnimation.TryStart(DestinationImage);
    }
}

注解

若要获取 ConnectedAnimationService 的实例,请调用静态 GetForCurrentView 方法。

调用 PrepareToAnimate 时,需要提供一个密钥,以便与 方法返回的新创建的 ConnectedAnimation 相关联。 稍后可以使用此键通过调用 GetAnimation 来检索相同的动画。 这使你可以在两个不同的页面之间连接动画,而无需在页面之间手动传递对 ConnectedAnimation 对象的引用。

有关 ConnectedAnimationService 的完整示例,请参阅 Connected 动画示例

属性

DefaultDuration

获取或设置动画运行的默认时间。

DefaultEasingFunction

获取或设置动画使用的默认 CompositionEasingFunction

方法

GetAnimation(String)

返回具有指定键的动画。

GetForCurrentView()

返回当前视图的 ConnectedAnimationService 实例。

PrepareToAnimate(String, UIElement)

返回与指定的键和源元素关联的连接动画。

适用于

另请参阅