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
- Наследование
- Атрибуты
Примеры
Совет
Дополнительные сведения, рекомендации по проектированию и примеры кода см. в разделе Подключенная анимация.
Приложение "Коллекция 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) |
Возвращает подключенную анимацию, связанную с указанным ключом и исходным элементом. |