| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Net;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Animation;
- using System.Windows.Shapes;
- using System.IO.IsolatedStorage;
- using System.Windows.Controls.Primitives;
- using Microsoft.Phone.Controls;
- namespace WindowsPhone.Recipes.Push.Client.Controls
- {
- public partial class NotificationBox : UserControl
- {
- #region Fields
- private readonly IsolatedStorageSettings Settings = IsolatedStorageSettings.ApplicationSettings;
- private static Popup _popup;
- #endregion
- public string Title { get; set; }
- public string Message { get; set; }
-
- public bool ShowAgain
- {
- get
- {
- bool showAgain;
- if (!Settings.TryGetValue("NotificationBox.ShowAgain", out showAgain))
- {
- showAgain = true;
- ShowAgain = showAgain;
- }
- return showAgain;
- }
- set
- {
- Settings["NotificationBox.ShowAgain"] = value;
- }
- }
- private NotificationBox()
- {
- DataContext = this;
- InitializeComponent();
- }
- public static void Show(string title, string message)
- {
- if (_popup != null)
- {
- return;
- }
- var root = Application.Current.RootVisual as PhoneApplicationFrame;
- var notificationBox = new NotificationBox
- {
- Title = title,
- Message = message,
- Width = root.ActualWidth,
- MaxHeight = root.ActualHeight,
- HorizontalAlignment = HorizontalAlignment.Center,
- VerticalAlignment = VerticalAlignment.Center
- };
- if (!notificationBox.ShowAgain)
- return;
-
- _popup = new Popup
- {
- Child = notificationBox,
- IsOpen = true,
- };
- }
- private void buttonOk_Click(object sender, RoutedEventArgs e)
- {
- _popup.IsOpen = false;
- _popup = null;
- }
- }
- }
|