Condividi tramite


AppNotificationProgressBar Classe

Definizione

Rappresenta una barra di stato visualizzata in una notifica dell'app.

public ref class AppNotificationProgressBar sealed
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.Windows.AppNotifications.Builder.AppNotificationBuilderContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Windows.AppNotifications.Builder.AppNotificationBuilderContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AppNotificationProgressBar final
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.Windows.AppNotifications.Builder.AppNotificationBuilderContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Windows.AppNotifications.Builder.AppNotificationBuilderContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class AppNotificationProgressBar
function AppNotificationProgressBar()
Public NotInheritable Class AppNotificationProgressBar
Ereditarietà
Object Platform::Object IInspectable AppNotificationProgressBar
Attributi

Esempio

Nell'esempio seguente viene illustrata l'aggiunta di una barra di stato al payload XML per una notifica dell'app.

var notification = new AppNotificationBuilder()
    .AddText("Downloading your weekly playlist...")
    .AddProgressBar(new AppNotificationProgressBar()
        .BindTitle()
        .BindStatus()
        .BindValue()
        .BindValueStringOverride())
        .SetTag(tagName)
        .SetGroup(groupName))
    .BuildNotification();

var data = new AppNotificationProgressData (sequenceNumber /* Sequence number */);
data.Title = "Retreiving files"; // Binds to {progressTitle} in xml payload
data.Value = (double) currentFile / totalFiles; // Binds to {progressValue} in xml payload
data.ValueStringOverride = String.Format("{0}/{1} files", currentFile, totalFiles); // Binds to {progressValueString} in xml payload
data.Status = "Downloading..."; // Binds to {progressStatus} in xml payload

notification.Progress = data;

AppNotificationManager.Default.Show(notification);

Payload XML risultante:

<toast>
    <visual>
        <binding template='ToastGeneric'>
            <text>Downloading your weekly playlist...</text>
            <progress title='{progressTitle}' status='{progressStatus}' value='{progressValue}' valueStringOverride='{progressValueString}'/>
        </binding>
    </visual>
</toast>

Aggiornare i valori associati chiamando AppNotificationManager.UpdateAsync e specificando il tag e facoltativamente il gruppo, del tag da aggiornare.

private async Task UpdateProgressBar()
{
    var data = new AppNotificationProgressData(sequenceNumber /* Sequence number */);
    data.Title = "Retreiving files"; // Binds to {progressTitle} in xml payload
    data.Value = (double)currentFile / totalFiles; // Binds to {progressValue} in xml payload
    data.ValueStringOverride = String.Format("{0}/{1} files", currentFile, totalFiles); // Binds to {progressValueString} in xml payload
    data.Status = (currentFile < totalFiles) ? "Downloading..." : "Complete!"; // Binds to {progressStatus} in xml payload

    await AppNotificationManager.Default.UpdateAsync(data, tagName, groupName);
}

Commenti

Lo screenshot seguente mostra una notifica dell'app con una barra di stato.

Screenshot di una notifica dell'app con una barra di stato.

Aggiungere una barra di stato al payload XML per una notifica dell'app chiamando AppNotificationBuilder.AddProgressBar.

Per indicazioni sull'uso delle API AppNotificationBuilder per creare l'interfaccia utente per le notifiche dell'app, vedere Contenuto di notifica dell'app.

Per informazioni di riferimento sullo schema XML per le notifiche dell'app, vedere Schema del contenuto di notifica dell'app.

Costruttori

AppNotificationProgressBar()

Inizializza una nuova istanza della classe AppNotificationProgressBar .

Proprietà

Status

Ottiene o imposta il testo di stato di una barra di stato di notifica dell'app.

Title

Ottiene o imposta un testo del titolo di una barra di stato di notifica dell'app.

Value

Ottiene o imposta il valore di stato di un'app notifica barra di stato.

ValueStringOverride

Ottiene o imposta l'override della stringa di valore di una barra di stato di notifica dell'app.

Metodi

BindStatus()

Associa la proprietà AppNotificationProgressBar.Status .

BindTitle()

Associa la proprietà AppNotificationProgressBar.Title .

BindValue()

Associa la proprietà AppNotificationProgressBar.Value .

BindValueStringOverride()

Associa la proprietà AppNotificationProgressBar.ValueStringOverride .

SetStatus(String)

Imposta il testo dello stato di una barra di stato di notifica dell'app.

SetTitle(String)

Imposta il testo del titolo di una barra di stato di notifica dell'app.

SetValue(Double)

Imposta il valore di stato di avanzamento di una barra di stato di notifica dell'app.

SetValueStringOverride(String)

Imposta l'override della stringa di valore di una barra di stato di notifica dell'app.

Si applica a