Condividi tramite


AppNotificationProgressBar Costruttore

Definizione

Inizializza una nuova istanza della classe AppNotificationProgressBar .

public:
 AppNotificationProgressBar();
 AppNotificationProgressBar();
public AppNotificationProgressBar();
function AppNotificationProgressBar()
Public Sub New ()

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

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.

Si applica a