Udostępnij przez


Powiadomienie o oczekującej aktywacji aktualizacji

Możesz użyć PendingUpdate, aby utworzyć interakcje wielostopniowe w wyskakujących powiadomieniach. Na przykład, jak pokazano poniżej, można utworzyć serię komunikatów, gdzie kolejne komunikaty zależą od odpowiedzi z poprzednich komunikatów.

Komunikat oczekującej aktualizacji

Important

Wymaga aktualizacji dla komputerów stacjonarnych Fall Creators Update i wersji 2.0.0 biblioteki powiadomień: musisz uruchomić kompilację komputerów stacjonarnych 16299 lub nowszą, aby zobaczyć oczekujące zadania aktualizacji. Aby przypisać PendingUpdate przycisków, musisz użyć biblioteki NuGet w wersji 2.0.0 lub nowszej. PendingUpdate jest obsługiwana tylko na komputerze stacjonarnym i zostanie zignorowana na innych urządzeniach.

Prerequisites

W tym artykule zakłada się podstawową wiedzę na temat...

Overview

Aby zaimplementować wyskakujący element, który używa oczekującej aktualizacji jako zachowania po aktywacji...

  1. Na przyciskach aktywacji na tle powiadomień określ AfterActivationBehavior jako PendingUpdate

  2. Przypisz tag (i opcjonalnie grupę ) podczas wysyłania toasta.

  3. Gdy użytkownik kliknie przycisk, zadanie w tle zostanie aktywowane, a wyskakujące okienko będzie utrzymane na ekranie w stanie oczekującej aktualizacji.

  4. W zadaniu w tle wyślij nowe powiadomienie toast z nową zawartością, przy użyciu tego samego tagu i tej samej grupy .

Assign PendingUpdate

Na przyciskach aktywacji w tle, ustaw AfterActivationBehavior na PendingUpdate. Należy pamiętać, że działa to tylko w przypadku przycisków, które mają ActivationType typu Background.

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

Używanie tagu w powiadomieniu

Aby później zastąpić powiadomienie, musimy przypisać tag (i opcjonalnie grupę ) do powiadomienia.

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

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

Zastąp komunikat toast nową treścią

W odpowiedzi na kliknięcie przycisku przez użytkownika uruchamiane jest zadanie w tle i musisz zastąpić powiadomienie nową treścią. Możesz zastąpić toast, wysyłając nowy toast z tym samym tagiem i grupą.

Zdecydowanie zalecamy ustawienie dźwięku w trybie cichym przy podmianach w odpowiedzi na kliknięcie przycisku, ponieważ użytkownik już wchodzi w interakcję z powiadomieniem.

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