Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
È possibile raggruppare visivamente un set di notifiche correlate all'interno del Centro notifiche usando un'intestazione a comparsa nelle notifiche.
Important
richiede l'aggiornamento Desktop Creators e la libreria notifiche 1.4.0: è necessario eseguire la versione Desktop 15063 o successiva per visualizzare le intestazioni delle notifiche. Devi usare la versione 1.4.0 o successiva della libreria NuGet di UWP Community Toolkit Notifications per costruire l'intestazione nel contenuto della notifica toast. Le intestazioni sono supportate solo sul desktop.
Come illustrato di seguito, questa conversazione di gruppo è unificata sotto un'unica intestazione, "Camping!!". Ogni messaggio nella conversazione è una notifica toast separata che condivide la stessa intestazione.
È anche possibile scegliere di raggruppare visivamente le notifiche in base alla categoria, ad esempio promemoria dei voli, rilevamento pacchetti e altro ancora.
Aggiungere un'intestazione a un toast
Ecco come aggiungere un'intestazione a una notifica toast.
Note
Le intestazioni sono supportate solo sul desktop. I dispositivi che non supportano le intestazioni ignoreranno semplicemente l'intestazione.
new ToastContentBuilder()
.AddHeader("6289", "Camping!!", "action=openConversation&id=6289")
.AddText("Anyone have a sleeping bag I can borrow?");
In summary...
- Aggiungere l'intestazione al ToastContent
- Assegna le proprietà richieste Id, Titoloe Argomenti
- Invia la tua notifica (ulteriori informazioni)
- In un'altra notifica usare la stessa intestazione ID per unificarli sotto l'intestazione. Il ID è l'unica proprietà usata per determinare se le notifiche devono essere raggruppate, ossia il titolo e gli argomenti possono essere diversi. Vengono utilizzati titolo
e argomenti dalla notifica più recente all'interno di un gruppo. Se tale notifica viene rimossa, il titolo e gli argomenti tornano alla notifica più recente disponibile.
Gestire l'attivazione da un'intestazione
Le intestazioni sono selezionabili dagli utenti, in modo che l'utente possa fare clic sull'intestazione per scoprire di più dall'app.
Di conseguenza, le app possono fornire Argomenti sull'intestazione, in modo analogo agli argomenti di avvio del toast stesso.
L'attivazione viene gestita in modo identico a normale attivazione di avviso, il che significa che è possibile recuperare questi argomenti nel metodo OnActivated di App.xaml.cs proprio come si fa quando l'utente clicca sul corpo del tuo avviso o su un pulsante nel tuo avviso.
protected override void OnActivated(IActivatedEventArgs e)
{
// Handle toast activation
if (e is ToastNotificationActivatedEventArgs)
{
// Arguments specified from the header
string arguments = (e as ToastNotificationActivatedEventArgs).Argument;
}
}
Additional info
L'intestazione separa visivamente e raggruppa le notifiche. Non cambia nessun'altra logistica relativa al numero massimo di notifiche che un'app può avere (20) e il comportamento first-in-first-out dell'elenco delle notifiche.
L'ordine delle notifiche all'interno delle intestazioni è il seguente... Per una determinata app, la notifica più recente dall'app (e il gruppo di intestazioni completo se fa parte di un'intestazione) verrà visualizzata per prima.
Il ID può essere qualsiasi stringa tu scelga. Non esistono restrizioni relative a lunghezza o caratteri per nessuna delle proprietà in ToastHeader. L'unico vincolo è che l'intero contenuto dell'avviso popup XML non può essere maggiore di 5 KB.
La creazione di intestazioni non modifica il numero di notifiche visualizzate nel Centro notifiche prima che venga visualizzato il pulsante "Altre informazioni" (questo numero è 3 per impostazione predefinita e può essere configurato dall'utente per ogni app in Impostazioni di sistema per le notifiche).
Facendo clic sull'intestazione, proprio come quando si fa clic sul titolo dell'app, non vengono eliminate le notifiche appartenenti a questa intestazione (la tua app dovrebbe usare le API di notifica per eliminare le notifiche pertinenti).