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


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

Свойства

DefaultDuration

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

DefaultEasingFunction

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

Методы

GetAnimation(String)

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

GetForCurrentView()

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

PrepareToAnimate(String, UIElement)

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

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

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