Popup mit ausstehender Updateaktivierung

Sie können PendingUpdate verwenden, um mehrstufige Interaktionen in Ihren Popupbenachrichtigungen zu erstellen. Wie unten gezeigt, können Sie beispielsweise eine Reihe von Popups erstellen, bei denen die nachfolgenden Popups von den Antworten der vorherigen Popups abhängen.

Popup mit ausstehendem Update

Wichtig

Erfordert Desktop Fall Creators Update und 2.0.0 der Benachrichtigungsbibliothek: Sie müssen Desktopbuild 16299 oder höher ausführen, um ausstehende Updatearbeiten anzuzeigen. Sie müssen version 2.0.0 oder höher der UWP Community Toolkit Notifications NuGet-Bibliothek verwenden, um Ihren Schaltflächen PendingUpdate zuzuweisen. PendingUpdate wird nur auf dem Desktop unterstützt und wird auf anderen Geräten ignoriert.

Voraussetzungen

Dieser Artikel setzt voraus, dass...

Übersicht

Um ein Popup zu implementieren, das das ausstehende Update als sein Verhalten nach der Aktivierung verwendet...

  1. Geben Sie auf ihren Popup-Hintergrundaktivierungsschaltflächen einen AfterActivationBehavior von PendingUpdate an.

  2. Zuweisen eines Tags (und optional gruppieren) beim Senden des Popups

  3. Wenn der Benutzer auf Ihre Schaltfläche klickt, wird Ihre Hintergrundaufgabe aktiviert, und das Popup wird auf dem Bildschirm in einem ausstehenden Updatezustand beibehalten.

  4. Senden Sie in Der Hintergrundaufgabe ein neues Popup mit Ihrem neuen Inhalt, wobei Sie dasselbe Tag und dieselbe Gruppe verwenden.

PendingUpdate zuweisen

Legen Sie auf den Schaltflächen für die Hintergrundaktivierung die Option AfterActivationBehavior auf PendingUpdate fest. Beachten Sie, dass dies nur für Schaltflächen funktioniert, die über einen ActivationType von Background verfügen.

new ToastContentBuilder()

    .AddText("Would you like to order lunch today?")

    .AddButton(new ToastButton("Yes", "action=orderLunch")
    {
        ActivationType = ToastActivationType.Background,

        ActivationOptions = new ToastActivationOptions()
        {
            AfterActivationBehavior = ToastAfterActivationBehavior.PendingUpdate
        }
    });

Verwenden eines Tags für die Benachrichtigung

Um die Benachrichtigung später zu ersetzen, müssen wir der Benachrichtigung das Tag (und optional die Gruppe) zuweisen.

// Create the notification
var notif = new ToastNotification(content.GetXml())
{
    Tag = "lunch"
};

// And show it
ToastNotificationManager.CreateToastNotifier().Show(notif);

Ersetzen des Popups durch neuen Inhalt

Als Reaktion darauf, dass der Benutzer auf ihre Schaltfläche klickt, wird Ihre Hintergrundaufgabe ausgelöst, und Sie müssen das Popup durch neuen Inhalt ersetzen. Sie ersetzen das Popup, indem Sie einfach ein neues Popup mit demselben Tag und derselben Gruppe senden.

Es wird dringend empfohlen , die Audiowiedergabe bei Ersetzungen als Reaktion auf einen Schaltflächenklick auf "Silent" festzulegen, da der Benutzer bereits mit Ihrem Popup interagiert.

// Generate new content
ToastContent content = new ToastContent()
{
    ...

    // We disable audio on all subsequent toasts since they appear right after the user
    // clicked something, so the user's attention is already captured
    Audio = new ToastAudio() { Silent = true }
};

// Create the new notification
var notif = new ToastNotification(content.GetXml())
{
    Tag = "lunch"
};

// And replace the old one with this one
ToastNotificationManager.CreateToastNotifier().Show(notif);