Condividi tramite


ConnectedAnimationService Classe

Definizione

Rappresenta un servizio che fornisce proprietà e metodi per visualizzare un oggetto 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
Ereditarietà
Object Platform::Object IInspectable ConnectedAnimationService
Attributi

Esempio

Suggerimento

Per altre info, linee guida per la progettazione ed esempi di codice, vedi Animazione connessa.

L'app Raccolta WinUI 3 include esempi interattivi della maggior parte dei controlli, delle funzionalità e delle funzionalità winUI 3. Ottenere l'app da Microsoft Store o ottenere il codice sorgente in GitHub.

In questo esempio viene illustrato come animare un'immagine tra due pagine durante uno spostamento.

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);
    }
}

Commenti

Per ottenere un'istanza di ConnectedAnimationService, chiamare il metodo Statico GetForCurrentView .

Quando si chiama PrepareToAnimate, si specifica una chiave da associare all'oggetto ConnectedAnimation appena creato restituito dal metodo . In seguito puoi usare questa chiave per recuperare la stessa animazione chiamando GetAnimation. In questo modo è possibile connettere l'animazione tra due pagine diverse senza dover passare manualmente il riferimento all'oggetto ConnectedAnimation tra le pagine.

Vedi l'esempio di animazione connessa per un esempio completo di ConnectedAnimationService.

Proprietà

DefaultDuration

Ottiene o imposta l'ora predefinita di esecuzione dell'animazione.

DefaultEasingFunction

Ottiene o imposta l'oggetto CompositionEasingFunction predefinito utilizzato dall'animazione.

Metodi

GetAnimation(String)

Restituisce l'animazione con la chiave specificata.

GetForCurrentView()

Restituisce un'istanza di ConnectedAnimationService per la visualizzazione corrente.

PrepareToAnimate(String, UIElement)

Restituisce un'animazione connessa associata alla chiave e all'elemento di origine specificati.

Si applica a

Vedi anche