Поделиться через


ConnectedAnimationService Класс

Определение

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

public ref class ConnectedAnimationService sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 196608)]
/// [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(Windows.Foundation.UniversalApiContract), 196608)]
[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
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 Anniversary Edition (появилось в 10.0.14393.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v3.0)

Примеры

Совет

Дополнительные сведения, рекомендации по проектированию и примеры кода см. в разделе Подключенная анимация.

Если у вас установлено приложение "Коллекция WinUI 2 ", щелкните здесь, чтобы открыть приложение и просмотреть раздел Подключенная анимация в действии.

В этом примере показано, как анимировать изображение между двумя страницами во время навигации.

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 см. в примере анимации ConnectedAnimationService.

Свойства

DefaultDuration

Возвращает или задает время выполнения анимации по умолчанию.

DefaultEasingFunction

Возвращает или задает свойство CompositionEasingFunction по умолчанию, используемое анимацией.

Методы

GetAnimation(String)

Возвращает анимацию с указанным ключом.

GetForCurrentView()

Возвращает экземпляр ConnectedAnimationService для текущего представления.

PrepareToAnimate(String, UIElement)

Возвращает подключенную анимацию, связанную с указанным ключом и исходным элементом.

Применяется к

См. также раздел