Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.IO;
- using System.Windows;
- using System.Runtime;
- using Windows.UI.Notifications;
- using Windows.Data.Xml.Dom;
- namespace DesktopToastsSample
- {
- public partial class MainWindow : Window
- {
- private const String APP_ID = "Microsoft.Samples.DesktopToastsSample";
- public MainWindow()
- {
- InitializeComponent();
- ShowToastButton.Click += ShowToastButton_Click;
- }
- // Create and show the toast.
- // See the "Toasts" sample for more detail on what can be done with toasts
- private void ShowToastButton_Click(object sender, RoutedEventArgs e)
- {
- // Get a toast XML template
- XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastImageAndText04);
- // Fill in the text elements
- XmlNodeList stringElements = toastXml.GetElementsByTagName("text");
- for (int i = 0; i < stringElements.Length; i++)
- {
- stringElements[i].AppendChild(toastXml.CreateTextNode("Line " + i));
- }
- // Specify the absolute path to an image
- String imagePath = "file:///" + Path.GetFullPath("toastImageAndText.png");
- XmlNodeList imageElements = toastXml.GetElementsByTagName("image");
- imageElements[0].Attributes.GetNamedItem("src").NodeValue = imagePath;
- // Create the toast and attach event listeners
- ToastNotification toast = new ToastNotification(toastXml);
- toast.Activated += ToastActivated;
- toast.Dismissed += ToastDismissed;
- toast.Failed += ToastFailed;
- // Show the toast. Be sure to specify the AppUserModelId on your application's shortcut!
- ToastNotificationManager.CreateToastNotifier(APP_ID).Show(toast);
- }
- private void ToastActivated(ToastNotification sender, object e)
- {
- Dispatcher.Invoke(() =>
- {
- Activate();
- Output.Text = "The user activated the toast.";
- });
- }
- private void ToastDismissed(ToastNotification sender, ToastDismissedEventArgs e)
- {
- String outputText = "";
- switch (e.Reason)
- {
- case ToastDismissalReason.ApplicationHidden:
- outputText = "The app hid the toast using ToastNotifier.Hide";
- break;
- case ToastDismissalReason.UserCanceled:
- outputText = "The user dismissed the toast";
- break;
- case ToastDismissalReason.TimedOut:
- outputText = "The toast has timed out";
- break;
- }
- Dispatcher.Invoke(() =>
- {
- Output.Text = outputText;
- });
- }
- private void ToastFailed(ToastNotification sender, ToastFailedEventArgs e)
- {
- Dispatcher.Invoke(() =>
- {
- Output.Text = "The toast encountered an error.";
- });
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement