ProgressBarAnimationBehavior

Das ProgressBar-Animationsverhalten animiert einen ProgressBar von seinem aktuellen Fortschrittswert zu einem angegebenen Wert über einen bestimmten Zeitraum. Die Methode akzeptiert einen Double Fortschrittswert, eine uint Dauer in Millisekunden und einen Easing Enumwert.

Important

Die .NET MAUI Community Toolkit Behaviors legen die BindingContext eines Verhaltens nicht fest, da Verhaltensweisen über Stile freigegeben und auf mehrere Steuerelemente angewendet werden können. Weitere Informationen finden Sie unter .NET MAUI Behaviors

Syntax

XAML

Einbinden des XAML-Namespace

Um das Toolkit in XAML verwenden zu können, muss der folgende xmlns-Abschnitt zu Ihrer Seite oder Ansicht hinzugefügt werden:

xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"

Daher das Folgende:

<ContentPage
    x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">

</ContentPage>

Würde geändert werden, um das xmlns wie folgt einzubinden:

<ContentPage
    x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit">

</ContentPage>

Verwenden von ProgressBarAnimationBehavior

Dies ProgressBarAnimationBehavior kann wie folgt in XAML verwendet werden:

<ContentPage 
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
    x:Class="MyLittleApp.MainPage"
    x:Name="Page">
     
        <Label Text="The ProgressBarAnimationBehavior is a behavior that animates a ProgressBar" />

        <ProgressBar>
            <ProgressBar.Behaviors>
                <toolkit:ProgressBarAnimationBehavior
                    x:Name="ProgressBarAnimationBehavior"
                    Progress="{Binding Source={x:Reference Page}, Path=BindingContext.Progress, x:DataType=ContentPage}"
                    Length="250"/>
            </ProgressBar.Behaviors>
        </ProgressBar>
</ContentPage>

C#

Dies ProgressBarAnimationBehavior kann wie folgt in C# verwendet werden:

class ProgressBarAnimationBehaviorPage : ContentPage
{
    public ProgressBarAnimationBehaviorPage()
    {
        var progressBar = new ProgressBar();

        var behavior = new ProgressBarAnimationBehavior()
        {
            Progress = 0.75,
            Length = 250
        };

        progressBar.Behaviors.Add(behavior);

        Content = progressBar;
    }
}

C#-Markup

Unser CommunityToolkit.Maui.Markup Paket bietet eine viel präzisere Möglichkeit, dies Behavior in C# zu verwenden.

using CommunityToolkit.Maui.Markup;

class ProgressBarAnimationBehaviorPage : ContentPage
{
    public ProgressBarAnimationBehaviorPage()
    {
        Content = new ProgressBar()
        .Behaviors(new ProgressBarAnimationBehavior
        {
            Progress = 0.75,
            Length = 250
        });           
    }
}

Eigenschaften

Eigentum Typ Beschreibung
Progress Doppelt Neuer Fortschrittswert, zu dem als Prozentsatz animiert werden soll, wobei 1 = 100 % und 0,75 = 75 % entspricht.
Länge uint Dauer in Millisekunden
Lockerung enum enum, das/die Easing steuert, ermöglicht Ihnen, eine Transferfunktion anzugeben, die steuert, wie Animationen beschleunigt oder verlangsamt werden. Weitere Details zu Easing finden Sie hier

Beispiele

Sie finden ein Beispiel für dieses Verhalten in Aktion in der .NET MAUI Community Toolkit-Beispielanwendung.

API

Sie finden den Quellcode für ProgressBarAnimationBehavior im .NET MAUI Community Toolkit GitHub Repository.