The toast notification control is built using the Popup control. The style/formatting of the control can be adjusted to suit your needs. The control is configured to be displayed at the bottom-right corner of your application.
![Toast.png]()
It makes use of the DispatcherTimer to ping the WCF service for new messages periodically. The WCF service method generates messages with random numbers to demonstrate the arrival of new information.
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class NotificationService : INotificationService
{
public List GetNotifications()
{
//sending some random messages
return new List()
{
new NotificationMessage(){Message= string.Format("There are {0} pending request/s in your queue.",new Random().Next(50))},
new NotificationMessage(){Message=string.Format("There are {0} request/s awaiting your approval.",new Random().Next(10))}
};
}
}
You can replace the above code with the actual logic required in your case.
The service returns a list of NotificationMessage objects which acts as the data context to the control.
public class NotificationMessage
{
public string Message{get;set;}
}
You can further extend the NotificationMessage class to include message type(warning, information, error), message priority etc.
I have attached the sample for your reference.