private void ShowReminders(Microsoft.Uii.Csr.RequestActionEventArgs args = null) { if (args != null) { List <KeyValuePair <string, string> > argList = Utility.SplitLines(args.Data, CurrentContext, localSession); snoozeText = Utility.GetAndRemoveParameter(argList, "snooze"); dismissText = Utility.GetAndRemoveParameter(argList, "dismiss"); dismissallText = Utility.GetAndRemoveParameter(argList, "dismissall"); openitemText = Utility.GetAndRemoveParameter(argList, "openitem"); clicksnoozeText = Utility.GetAndRemoveParameter(argList, "clicksnooze"); dueText = Utility.GetAndRemoveParameter(argList, "due"); subjectText = Utility.GetAndRemoveParameter(argList, "subject"); } Dispatcher.Invoke(new Action(delegate { try { if (outlookNotificationWindow != null) { outlookNotificationWindow.Activate(); return; } outlookNotificationWindow = new OutlookNotification(this, notifyItems , snoozeText, dismissText, dismissallText, openitemText, clicksnoozeText, dueText, subjectText); outlookNotificationWindow.ShowInTaskbar = true; outlookNotificationWindow.Closing += new System.ComponentModel.CancelEventHandler(outlookNotificationWindow_Closing); outlookNotificationWindow.Show(); } catch (Exception ex) { DynamicsLogger.Logger.Log("ShowReminders: " + ex.Message + "\r\n" + ex.StackTrace); outlookNotificationWindow = null; } })); }
void outlookNotificationWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e) { outlookNotificationWindow = null; }