コード例 #1
0
 public void FetchData(ReminderModel model)
 {
     try
     {
         if (string.IsNullOrEmpty(model.Contact))
         {
             GuiD         = model.GuiD;
             ReminderTime = Convert.ToDateTime(model.ReminderTime).ToString();
             ReminderTime = ReminderTime.Substring(0, ReminderTime.Length - 3);
             Content      = model.Content;
             Contact      = model.Contact;
             Record       = model.Record;
             RecordPath   = model.RecordPath;
             Ring         = model.Ring;
             if (!string.IsNullOrEmpty(Contact))
             {
                 Label = Contact + "," + ReminderTime;
             }
             else
             {
                 Label = ReminderTime;
             }
             if (!string.IsNullOrEmpty(Content) && Content.Length > 13)
             {
                 LabelContent = Content.Substring(0, 13) + "...";
             }
             else
             {
                 LabelContent = Content;
             }
         }
         else
         {
             GuiD         = model.GuiD;
             ReminderTime = model.ReminderTime;
             Content      = model.Content;
             Contact      = model.Contact;
             Record       = model.Record;
             RecordPath   = model.RecordPath;
             Ring         = model.Ring;
             Label        = Contact + "," + ReminderTime;
             if (!string.IsNullOrEmpty(Content) && Content.Length > 13)
             {
                 LabelContent = Content.Substring(0, 13) + "...";
             }
             else
             {
                 LabelContent = Content;
             }
         }
     }
     catch (Exception e)
     {
         LogWriter.Instance.Error(e);
     }
 }
コード例 #2
0
 /// <summary>
 /// 计时
 /// </summary>
 private void TimeTick()
 {
     _reportTimer = new Timer(new TimerCallback(callback =>
     {
         DispatcherHelper.CheckBeginInvokeOnUI(
             () =>
         {
             try
             {
                 //下次提醒时间
                 NextReminderTime = (DateTime.Now + new TimeSpan(0, 9, 0)).ToString();
                 NextReminderTime = NextReminderTime.Substring(0, NextReminderTime.Length - 3);
                 //现在时间
                 //AlarmTime = DateTime.Now.ToString("HH") + ":" + DateTime.Now.ToString("mm");
                 //当前时间与提醒时间比对
                 if ((DateTime.Now - Convert.ToDateTime(_reminderTimeRing)).TotalSeconds <= 5 && (DateTime.Now - Convert.ToDateTime(_reminderTimeRing)).TotalSeconds >= 0)
                 {
                     if (_mainWindow != null)
                     {
                         string[] times = Convert.ToDateTime(_reminderTimeRing).ToString().Split(' ');
                         if (times[1].Contains("午"))
                         {
                             if (times[1].Equals("上午"))
                             {
                                 ReminderTime = times[0] + " " + times[2] + "am";
                             }
                             else
                             {
                                 ReminderTime = times[0] + " " + times[2] + "pm";
                             }
                         }
                         else
                         {
                             ReminderTime = times[0] + " " + times[1];
                         }
                         ReminderTime = ReminderTime.Substring(0, ReminderTime.Length - 3);
                         ReminderReporter?.Invoke(Content, true);
                         _mainWindow.Show();
                         _isTime = true;
                         //_player.Play();
                     }
                 }
                 if (_isTime)
                 {
                     _internal++;
                     if (_internal % 15 == 0)
                     {
                         ReminderReporter?.Invoke(Content, true);
                     }
                     else if (_internal > 44)       //44*3000 = 132s
                     {
                         ReminderReporter?.Invoke(Content, false);
                         //_player.Stop();
                         //_player.Close();
                         _mainWindow.Close();
                         _isTime   = false;
                         _internal = 0;
                     }
                 }
             }
             catch (Exception ex)
             {
                 LogWriter.Instance.Error(ex);
             }
         });
     }), null, 0, 3000); //如:一天执行一次 1000 * 60 * 60 * 24
 }