/// <summary> /// Helper method to pop a toast /// </summary> private void DoToast(int numEventsOfInterest, string eventName) { // pop a toast for each geofence event ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier(); // Create a two line toast and add audio reminder // Here the xml that will be passed to the // ToastNotification for the toast is retrieved Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); // Set both lines of text Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode("Geolocation Sample")); if (1 == numEventsOfInterest) { toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(eventName)); } else { string secondLine = "There are " + numEventsOfInterest + " new geofence events"; toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(secondLine)); } // now create a xml node for the audio source Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); Windows.Data.Xml.Dom.XmlElement audio = toastXml.CreateElement("audio"); audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); ToastNotification toast = new ToastNotification(toastXml); ToastNotifier.Show(toast); }
/* * Tooast notifications to show various success , progress or failures. */ private void ShowToastNotification(string title, string stringContent) { // Initialize a ToastNotifier. ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); // Add a title and a notification body. toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode(title)); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(stringContent)); Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); // Set audio property to play on notification. Windows.Data.Xml.Dom.XmlElement audio = toastXml.CreateElement("audio"); audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); ToastNotification toast = new ToastNotification(toastXml) { // Set the notification to disappeaar after 4 seconds. ExpirationTime = DateTime.Now.AddSeconds(4) }; // Display the toast. ToastNotifier.Show(toast); }
/// <summary> /// Displays an image-based Toast Message /// </summary> /// <param name="appId">string-based application ID for handling Toast messages</param> /// <param name="title">Title of the toast message to be displayed</param> /// <param name="message">Message for the toast to contain</param> /// <param name="image">Image to display in the toast message</param> static void ShowImageToast(string appId, string title, string message, string image) { Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent( ToastTemplateType.ToastImageAndText02); // Fill in the text elements Windows.Data.Xml.Dom.XmlNodeList stringElements = toastXml.GetElementsByTagName("text"); stringElements[0].AppendChild(toastXml.CreateTextNode(title)); stringElements[1].AppendChild(toastXml.CreateTextNode(message)); // Specify the absolute path to an image String imagePath = "file:///" + image; Windows.Data.Xml.Dom.XmlNodeList imageElements = toastXml.GetElementsByTagName("image"); imageElements[0].Attributes.GetNamedItem("src").NodeValue = imagePath; // Create the toast and attach event listeners ToastNotification toast = new ToastNotification(toastXml); ToastEvents events = new ToastEvents(); toast.Activated += events.ToastActivated; toast.Dismissed += events.ToastDismissed; toast.Failed += events.ToastFailed; // Show the toast. Be sure to specify the AppUserModelId // on your application's shortcut! ToastNotificationManager.CreateToastNotifier(appId).Show(toast); }
//---------------------------------------------------------------------------------------------------------------------------------------------Кнопки для генерации private async void CreateExcelButton_Click(object sender, RoutedEventArgs e) { if (ExcelGroupComboBox.SelectedIndex != -1 && ExcelDiscComboBox.SelectedIndex != -1) { FileInfo fileex = new FileInfo(ApplicationData.Current.LocalFolder.Path + $@"\{groups[ExcelGroupComboBox.SelectedIndex]}.xlsx"); ExcelPackage.LicenseContext = LicenseContext.NonCommercial; ToastNotifier toastNote = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument xml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList nodes = xml.GetElementsByTagName("text"); nodes.Item(0).AppendChild(xml.CreateTextNode("Генерация Excel файла")); using (ExcelPackage excelPackage = new ExcelPackage(fileex)) { try { ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets.Add($"{disciplines[ExcelDiscComboBox.SelectedIndex]}"); List <List <string> > marks = new List <List <string> >(); marks = await De_Serialization.Deserialisation <List <List <string> > >($"{disciplines[ExcelDiscComboBox.SelectedIndex]}-{groups[ExcelGroupComboBox.SelectedIndex]}.xml", CreationCollisionOption.OpenIfExists, marks); for (int i = 1; i < marks.Count + 1; i++) { List <string> day = marks[i - 1]; for (int g = 1; g < day.Count + 1; g++) { string[] splitted = day[g - 1].Split('|'); if (i == 1 && g != day.Count) { worksheet.Cells[g + 1, i].Value = splitted[1]; worksheet.Cells[g + 1, i + 1].Value = splitted[0]; } else if (g == day.Count) { worksheet.Cells[1, i + 1].Value = day[g - 1]; } else { worksheet.Cells[g + 1, i + 1].Value = splitted[0]; } } } excelPackage.Save(); nodes.Item(1).AppendChild(xml.CreateTextNode("Excel файл успешно сохранен!")); } catch { nodes.Item(1).AppendChild(xml.CreateTextNode("Произошла ошибка в сохранении. Такое бывает, если в Excel уже есть лист с таким именем")); } ToastNotification toast = new ToastNotification(xml); toast.ExpirationTime = DateTime.Now.AddSeconds(4); toastNote.Show(toast); } } }
async void IDownloadImage.CopyImage(ZXingBarcodeImageView image) { EmailMessage emailMessage = new EmailMessage(); string messageBody = "Hello World"; emailMessage.Body = messageBody; var writer = new ZXing.Mobile.BarcodeWriter(); if (image != null && image.BarcodeOptions != null) { writer.Options = image.BarcodeOptions; } if (image != null) { writer.Format = image.BarcodeFormat; } var value = image != null ? image.BarcodeValue : string.Empty; var wb = writer.Write(value); StorageFile tempFile = await ApplicationData.Current.TemporaryFolder.CreateFileAsync("Barcode_Temp.jpeg", CreationCollisionOption.ReplaceExisting); if (tempFile != null) { CachedFileManager.DeferUpdates(tempFile); await ConvertToJPEGFileAsync(tempFile, wb); var status = await CachedFileManager.CompleteUpdatesAsync(tempFile); var dataPackage = new DataPackage(); dataPackage.SetStorageItems(new List <IStorageItem>() { tempFile }); dataPackage.RequestedOperation = DataPackageOperation.Copy; Windows.ApplicationModel.DataTransfer.Clipboard.SetContent(dataPackage); ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode("Image Copied")); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode("Image Copied Successfully")); Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); Windows.Data.Xml.Dom.XmlElement audio = toastXml.CreateElement("audio"); audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); ToastNotification toast = new ToastNotification(toastXml); toast.ExpirationTime = DateTime.Now.AddSeconds(4); ToastNotifier.Show(toast); } }
/// <summary> /// Shows toast message with given text /// </summary> /// <param name="app">app object; unused</param> /// <param name="message">toast message</param> private void ShowToast(Core.App app, string message) { ToastNotifier toastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode(Constants.AppTitle)); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(message)); var toast = new ToastNotification(toastXml); toast.ExpirationTime = DateTime.Now.AddSeconds(4); toastNotifier.Show(toast); }
private void ShowNotification(string title, string message) { ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode(title)); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(message)); Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); ToastNotification toast = new ToastNotification(toastXml); toast.ExpirationTime = DateTime.Now.AddSeconds(4); ToastNotifier.Show(toast); }
private void toastWindowNotification(string text) { #if COMPATIBLE Task.Run(() => { MessageBox.Show(text, "ACTFate", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1, MessageBoxOptions.ServiceNotification); }); #else { try { // Get a toast XML template Windows.Data.Xml.Dom.XmlDocument toastXml = Windows.UI.Notifications.ToastNotificationManager.GetTemplateContent(Windows.UI.Notifications.ToastTemplateType.ToastImageAndText03); // Fill in the text elements Windows.Data.Xml.Dom.XmlNodeList stringElements = toastXml.GetElementsByTagName("text"); for (int i = 0; i < stringElements.Length; i++) { stringElements[i].AppendChild(toastXml.CreateTextNode(text)); } // Create the toast and attach event listeners Windows.UI.Notifications.ToastNotification toast = new Windows.UI.Notifications.ToastNotification(toastXml); // Show the toast. Be sure to specify the AppUserModelId on your application's shortcut! Windows.UI.Notifications.ToastNotificationManager.CreateToastNotifier(APP_ID).Show(toast); } catch (Exception e) { Log.Ex(e, "error"); } } #endif }
// Method to display Toast messages, mostly Errors, with sound and 4 seconds duration. private void ShowToastNotification(string title, string stringContent) { ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode(title)); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(stringContent)); Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); Windows.Data.Xml.Dom.XmlElement audio = toastXml.CreateElement("audio"); audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); ToastNotification toast = new ToastNotification(toastXml); toast.ExpirationTime = DateTime.Now.AddSeconds(4); ToastNotifier.Show(toast); }
private void toastWindowNotification(string text) { try { // Get a toast XML template Windows.Data.Xml.Dom.XmlDocument toastXml = Windows.UI.Notifications.ToastNotificationManager.GetTemplateContent(Windows.UI.Notifications.ToastTemplateType.ToastImageAndText03); // Fill in the text elements Windows.Data.Xml.Dom.XmlNodeList stringElements = toastXml.GetElementsByTagName("text"); for (int i = 0; i < stringElements.Length; i++) { stringElements[i].AppendChild(toastXml.CreateTextNode(text)); } // Specify the absolute path to an image String imagePath = "file:///" + Path.GetFullPath("toastImageAndText.png"); // 없으면 기본 아이콘 이미지로 알아서 뜸. ACT있는곳에 넣어야되는듯 dll옆이 아니라 Windows.Data.Xml.Dom.XmlNodeList imageElements = toastXml.GetElementsByTagName("image"); imageElements[0].Attributes.GetNamedItem("src").NodeValue = imagePath; // Create the toast and attach event listeners Windows.UI.Notifications.ToastNotification toast = new Windows.UI.Notifications.ToastNotification(toastXml); // Show the toast. Be sure to specify the AppUserModelId on your application's shortcut! Windows.UI.Notifications.ToastNotificationManager.CreateToastNotifier(APP_ID).Show(toast); } catch (Exception e) { Log.Ex(e, "error"); } }
//Show toast notification with retrieved string content: private void DoToast(string stringContent) { ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode("Background tasks Sample")); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(stringContent)); Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); Windows.Data.Xml.Dom.XmlElement audio = toastXml.CreateElement("audio"); audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); ToastNotification toast = new ToastNotification(toastXml); ToastNotifier.Show(toast); }
private void OtherDeviceToastNotification(string DeviceName) { ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode(DeviceName)); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode("The charge on this device is greater than 90%. You can remove the charger now!")); Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); Windows.Data.Xml.Dom.XmlElement audio = toastXml.CreateElement("audio"); audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); ToastNotification toast = new ToastNotification(toastXml); toast.ExpirationTime = DateTime.Now.AddSeconds(15); ToastNotifier.Show(toast); }
public void AddNotification(DateTime startDate, string content) { Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode("Zadanie do wykonania\n")); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(content)); Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); Windows.Data.Xml.Dom.XmlElement audio = toastXml.CreateElement("audio"); audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); var diffrence = (startDate - DateTime.Now).TotalSeconds; DateTime EventDate = DateTime.Now.AddSeconds(diffrence); TimeSpan NotTime = EventDate.Subtract(DateTime.Now); DateTime dueTime = DateTime.Now.Add(NotTime); ScheduledToastNotification scheduledToast = new ScheduledToastNotification(toastXml, dueTime); ToastNotificationManager.CreateToastNotifier().AddToSchedule(scheduledToast); }
private void ToastMessage() { ToastTemplateType toastTemplate = ToastTemplateType.ToastImageAndText01; Windows.Data.Xml.Dom.XmlDocument toastxml = ToastNotificationManager.GetTemplateContent(toastTemplate); Windows.Data.Xml.Dom.XmlNodeList toastTextElements = toastxml.GetElementsByTagName("text"); toastTextElements[0].AppendChild(toastxml.CreateTextNode("You are at a marked position")); ToastNotification toast = new ToastNotification(toastxml); ToastNotificationManager.CreateToastNotifier().Show(toast); }
public void messageflex() { ToastNotifier toastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode("Уведомление")); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode("Файл успешно создан.")); Windows.Data.Xml.Dom.XmlElement audio = toastXml.CreateElement("audio"); audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); ToastNotification toast = new ToastNotification(toastXml); toast.ExpirationTime = DateTime.Now.AddSeconds(4); toastNotifier.Show(toast); }
//Methods for displaying toasts, setting up shortcut, and toastevents. #region ToastHandlingMethods /// <summary> /// Displays a text-based Toast Message /// </summary> /// <param name="appId">string-based application ID for handling Toast messages</param> /// <param name="title">Title of the toast message to be displayed</param> /// <param name="message">Message for the toast to contain</param> static void ShowTextToast(string appId, string title, string message) { Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent( ToastTemplateType.ToastText02); // Fill in the text elements Windows.Data.Xml.Dom.XmlNodeList stringElements = toastXml.GetElementsByTagName("text"); stringElements[0].AppendChild(toastXml.CreateTextNode(title)); stringElements[1].AppendChild(toastXml.CreateTextNode(message)); // Create the toast and attach event listeners ToastNotification toast = new ToastNotification(toastXml); ToastEvents events = new ToastEvents(); //Adds details to event. toast.Activated += events.ToastActivated; toast.Dismissed += events.ToastDismissed; toast.Failed += events.ToastFailed; // Show the toast. Be sure to specify the AppUserModelId // on your application's shortcut! ToastNotificationManager.CreateToastNotifier(appId).Show(toast); }
/// <summary> /// Use COM server with Win32 app to make toast messages persist in the action center https://blogs.msdn.microsoft.com/tiles_and_toasts/2015/10/16/quickstart-handling-toast-activations-from-win32-apps-in-windows-10/ /// </summary> private static void ShowToast(string message) { // Get a toast XML template Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText01); // Fill in the text elements Windows.Data.Xml.Dom.XmlNodeList stringElements = toastXml.GetElementsByTagName("text"); for (int i = 0; i < stringElements.Length; i++) { stringElements[i].AppendChild(toastXml.CreateTextNode(message)); } var toast = new ToastNotification(toastXml); ToastNotificationManager.CreateToastNotifier("Wi-Fi Toaster").Show(toast); }
private void toastWindowNotification(string text) { Version currentVersion = Environment.OSVersion.Version; Version compareToVersion = new Version("6.2"); if (currentVersion.CompareTo(compareToVersion) >= 0) { try { // Get a toast XML template Windows.Data.Xml.Dom.XmlDocument toastXml = Windows.UI.Notifications.ToastNotificationManager.GetTemplateContent(Windows.UI.Notifications.ToastTemplateType.ToastImageAndText03); // Fill in the text elements Windows.Data.Xml.Dom.XmlNodeList stringElements = toastXml.GetElementsByTagName("text"); for (int i = 0; i < stringElements.Length; i++) { stringElements[i].AppendChild(toastXml.CreateTextNode(text)); } // Specify the absolute path to an image String imagePath = "file:///" + Path.GetFullPath("toastImageAndText.png"); // If it does not exist, it will take the default icon image. It seems to have to be put in ACT Windows.Data.Xml.Dom.XmlNodeList imageElements = toastXml.GetElementsByTagName("image"); imageElements[0].Attributes.GetNamedItem("src").NodeValue = imagePath; /* * Windows.Data.Xml.Dom.XmlElement audioElement = toastXml.CreateElement("audio"); * audioElement.SetAttribute("src", "ms-winsoundevent:Notification.SMS"); * audioElement.SetAttribute("loop", "true"); */ // Create the toast and attach event listeners Windows.UI.Notifications.ToastNotification toast = new Windows.UI.Notifications.ToastNotification(toastXml); // Show the toast. Be sure to specify the AppUserModelId on your application's shortcut! Windows.UI.Notifications.ToastNotificationManager.CreateToastNotifier(APP_ID).Show(toast); } catch (Exception e) { Log.Ex(e, "error"); } } else { MessageBox.Show(text, "ACTFate", MessageBoxButtons.OK, MessageBoxIcon.None, MessageBoxDefaultButton.Button1, MessageBoxOptions.ServiceNotification); } }
private async void BtnXmlWrite_Click(object sender, RoutedEventArgs e) { String input1value = TxtInput.Text; if (null != input1value && "" != input1value) { var value = doc.CreateTextNode(input1value); //find input1 tag in header where id=1 var xpath = "//header[@id='1']/user_input/input1"; var input1nodes = doc.SelectNodes(xpath); for (uint index = 0; index < input1nodes.Length; index++) { input1nodes.Item(index).AppendChild(value); } RichEditBoxSetMsg(ShowXMLResult, doc.GetXml(), true); } else { await new Windows.UI.Popups.MessageDialog("Please type in content in the box firstly.").ShowAsync(); } }
public void ExportSvg(StorageFolder outputFolder) { if (TableRecords == null || outputFolder == null) { return; } // Export each SVG glyph by iterating over the table records. int numExportedSvgs = 0; foreach (TableRecord record in TableRecords) { if (record.tag == "SVG ") { numExportedSvgs = parser.ExportSvgContent(record, source, outputFolder); } } // Show toast with number of successful SVG files saved. if (numExportedSvgs > 0) { // Make the toast. ToastTemplateType toastTemplate = ToastTemplateType.ToastText01; Windows.Data.Xml.Dom.XmlDocument xml = ToastNotificationManager.GetTemplateContent(toastTemplate); xml.DocumentElement.SetAttribute("launch", "Args"); // Set up the toast text. string toastString = numExportedSvgs + " SVGs were successfully saved to " + outputFolder.Path; Windows.Data.Xml.Dom.XmlText toastText = xml.CreateTextNode(toastString); Windows.Data.Xml.Dom.XmlNodeList elements = xml.GetElementsByTagName("text"); elements[0].AppendChild(toastText); // Show the toast. ToastNotification toast = new ToastNotification(xml); ToastNotifier toastNotifier = ToastNotificationManager.CreateToastNotifier(); toastNotifier.Show(toast); } }
public Task <INotificationResult> Notify(INotificationOptions options) { return(Task.Run(() => { ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02); Windows.Data.Xml.Dom.XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text"); toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode(options.Title)); toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(options.Description)); Windows.Data.Xml.Dom.IXmlNode toastNode = toastXml.SelectSingleNode("/toast"); var id = _count.ToString(); var root = toastXml.DocumentElement; root.SetAttribute("launch", id.ToString()); if (!string.IsNullOrEmpty(options.WindowsOptions.LogoUri)) { Windows.Data.Xml.Dom.XmlElement image = toastXml.CreateElement("image"); image.SetAttribute("placement", "appLogoOverride"); var imageUri = options.WindowsOptions.LogoUri; if (!options.WindowsOptions.LogoUri.Contains("//")) { imageUri = $"ms-appx:///{options.WindowsOptions.LogoUri}"; } image.SetAttribute("src", imageUri); toastXml.GetElementsByTagName("binding")[0].AppendChild(image); toastXml.GetElementsByTagName("binding")[0].Attributes[0].InnerText = "ToastGeneric"; } if (options.DelayUntil.HasValue) { ScheduledToastNotification toast = new ScheduledToastNotification(toastXml, options.DelayUntil.Value); ToastNotifier.AddToSchedule(toast); return new NotificationResult() { Action = NotificationAction.NotApplicable }; } else { Windows.UI.Notifications.ToastNotification toast = new Windows.UI.Notifications.ToastNotification(toastXml); toast.Tag = id; _count++; toast.Dismissed += Toast_Dismissed; toast.Activated += Toast_Activated; toast.Failed += Toast_Failed; _notificationOptions.Add(id, options); var waitEvent = new ManualResetEvent(false); _resetEvents.Add(id, waitEvent); ToastNotifier.Show(toast); waitEvent.WaitOne(); INotificationResult result = _eventResult[id]; if (!options.IsClickable && result.Action == NotificationAction.Clicked) // A click is transformed to manual dismiss { result = new NotificationResult() { Action = NotificationAction.Dismissed } } ; if (_resetEvents.ContainsKey(id)) { _resetEvents.Remove(id); } if (_eventResult.ContainsKey(id)) { _eventResult.Remove(id); } if (_notificationOptions.ContainsKey(id)) { _notificationOptions.Remove(id); } return result; } })); }
private async void PrintJournal_Click(object sender, RoutedEventArgs e) { ToastNotifier toast = ToastNotificationManager.CreateToastNotifier(); Windows.Data.Xml.Dom.XmlDocument toastxml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastImageAndText02); Windows.Data.Xml.Dom.XmlNodeList toastnodelist = toastxml.GetElementsByTagName("text"); ToastNotification toastNotification; ComboBox gBox = new ComboBox(); int kol = 0; FileInfo fi; List <TeacherRecord> records = new List <TeacherRecord>(); ContentDialog dialog = new ContentDialog() { Title = "Export data", Content = gBox, PrimaryButtonText = "Export" }; for (int count = 0; count < listGroups.Count; count++) { gBox.Items.Add(listGroups[count].Name); } if (gBox.Items.Count > 0) { gBox.SelectedIndex = 0; } else { gBox.PlaceholderText = "Groups are not found!"; } ContentDialogResult res = await dialog.ShowAsync(); if (res == ContentDialogResult.Primary) { if (gBox.Items.Count == 0) { return; } using (ExcelPackage excel = new ExcelPackage()) { excel.Workbook.Properties.Title = "Export"; ExcelWorksheet worksheet = excel.Workbook.Worksheets.Add(gBox.SelectedItem.ToString()); for (int count = 0; count < listrecords.Count; count++) { if (listrecords[count].group == gBox.SelectedItem.ToString()) { records.Add(listrecords[count]); } } for (int count = 0; count < records.Count; count++) { { for (int count2 = 0; count2 < 5; count2++) { switch (count2) { case 0: { worksheet.Cells[count + 1, count2 + 1].Value = listrecords[count].data; break; } case 1: { worksheet.Cells[count + 1, count2 + 1].Value = listrecords[count].subject; break; } case 2: { worksheet.Cells[count + 1, count2 + 1].Value = listrecords[count].group; break; } case 3: { worksheet.Cells[count + 1, count2 + 1].Value = listrecords[count].student; break; } case 4: { worksheet.Cells[count + 1, count2 + 1].Value = listrecords[count].value; break; } } kol++; } } } if (kol == 0) { worksheet.Cells[1, 1].Value = "Records are not found!"; } fi = new FileInfo(ApplicationData.Current.LocalFolder.Path + @"\" + "Export" + " group " + gBox.SelectedItem.ToString() + ".xlsx"); try { excel.SaveAs(fi); } catch (Exception ex) { toastnodelist.Item(0).AppendChild(toastxml.CreateTextNode("Exception!")); toastnodelist.Item(1).AppendChild(toastxml.CreateTextNode(e.ToString())); toastNotification = new ToastNotification(toastxml); toastNotification.ExpirationTime = DateTime.Now.AddSeconds(4); toast.Show(toastNotification); return; } finally { toastnodelist.Item(0).AppendChild(toastxml.CreateTextNode("Success!")); toastnodelist.Item(1).AppendChild(toastxml.CreateTextNode(ApplicationData.Current.LocalFolder.Path + @"\" + "Export" + " group " + gBox.SelectedItem.ToString() + ".xlsx")); toastNotification = new ToastNotification(toastxml); toastNotification.ExpirationTime = DateTime.Now.AddSeconds(4); toast.Show(toastNotification); } //var msg = await new MessageDialog(ApplicationData.Current.LocalFolder.Path + @"\" + "Export" + " group " + gBox.SelectedItem.ToString() + ".xlsx").ShowAsync(); } } }