venerdì 9 marzo 2012 #

Creare una nuova notifica toast in Windows 8 Consumer preview

Requisiti

  • Un'installazione di Windows 8 Consumer preview
  • Microsoft Visual Studio 11 Express beta for Windows 8

In questo esempio vedremo come creare una nuova notifica toast. Il post presuppone che il lettore sappia cos’è una notifica toast e abbia familiarità con la creazione di applicazioni metro style su Windows 8.

L'oggetto principale che permette di lavorare con le toast notification è la classe ToastNotificationManager che troviamo in Windows.UI.Notifications .

I metodi principali che troviamo sono

CreateToastNotifier Crea ed inizializza una nuova istanza del tipo ToastNotifcation permettendo cosi all'applicazione chiamante di creare una nuova notifica toast
CreateToastNotifier(String)
Crea ed inizializza una nuova istanza del tipo ToastNotifcation agganciandola ad un'applicaziobe specifica
GetTemplateContent Recupera il contenuto xml prededinito che rappresenterà il template della nostra toast notification . Accetta come parametro l'enum ToastTemplateType

Per poter scatenare una notifica toast è necessario che sul maniifest dell'applicazione  la proprietà Toast capable  sia impostata a Yes . Per far questo dalla solution explorer apriamo con un doppio click il file Package.appxmanifest  e dal tab Application UI impostiamo la proprieta a true

Il colore di sfondo e il colore del testo che verrànno utilizzati per la visualizzazione della notifica dipendono dalle proprietà  Background color e ForegroundText contenuti nel tab Application UI che abbiamo precedentemente utilizzato .

ManifestEditor

Il primo step consiste nel caricare il template XML che rappresenterà la nostra notifica  , per questo esempio utilizzo ToastText02

// Seleziono il template 
ToastTemplateType templateType = ToastTemplateType.ToastText02;

// Ne carico il contenuto XML e completo le informazioni che mi servono
XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(templateType);
            
XmlNodeList Descriptions = toastXml.GetElementsByTagName("text");
           
Descriptions[0].InnerText = "Andrea";
Descriptions[1].InnerText = "Ho una nuova notifica !!!";

//Creo una nuova Notifica e la mando in esecuzione
ToastNotification toast = new ToastNotification(toastXml);

ToastNotificationManager.CreateToastNotifier().Show(toast);

Questo è quello che abbiamo appena creato

demo toast

L’icona che viene visualizzata in basso a destra è l’icona che rappresenta l’applicazione e può essere definita tramite l’application manifest (Small logo).

Nei post che seguirannò

Gestire gli eventi di una notifica toast
Gestione dei suoni associati ad una notifica
Schedulazione di una notifica toast

Tags : Windows 8 Consumer Preview , Toast notification , ToastNotificationManager

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (92)