/* * 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> /// 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); }
//---------------------------------------------------------------------------------------------------------------------------------------------Кнопки для генерации 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); }
// 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); }
//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); }
/// <summary> /// 更新磁贴内容,最多支持四行信息 /// </summary> /// <param name="p_msgs"></param> public static void Tile(params string[] p_msgs) { #if UWP // 最多支持四行信息! int cnt = p_msgs.Length > 4 ? 4 : p_msgs.Length; if (cnt == 0) { return; } Windows.Data.Xml.Dom.XmlDocument xml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text03); Windows.Data.Xml.Dom.XmlNodeList nodes = xml.GetElementsByTagName("text"); for (uint i = 0; i < cnt; i++) { nodes.Item(i).InnerText = p_msgs[i]; } TileUpdateManager.CreateTileUpdaterForApplication().Update(new TileNotification(xml)); #elif IOS throw new NotImplementedException(); #elif ANDROID throw new NotImplementedException(); #elif WASM throw new NotImplementedException(); #endif }
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); }
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); }
/// <summary> /// 更新磁贴数字 /// </summary> /// <param name="p_num"></param> public static void Tile(double p_num) { #if UWP Windows.Data.Xml.Dom.XmlDocument xml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Block); Windows.Data.Xml.Dom.XmlNodeList nodes = xml.GetElementsByTagName("text"); nodes.Item(0).InnerText = p_num.ToString(); TileUpdateManager.CreateTileUpdaterForApplication().Update(new TileNotification(xml)); #elif IOS throw new NotImplementedException(); #elif ANDROID throw new NotImplementedException(); #elif WASM throw new NotImplementedException(); #endif }
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(); } } }