예제 #1
0
 public DialogCloseWatcher(object owner, Guid dialogHandleId, CloseHandlerDlgt handler)
 {
     _watcher = new MessageWatcher(owner, DialogManagerMessaging.CHANNEL, message =>
     {
         if (message.ChannelName == DialogManagerMessaging.CHANNEL)
         {
             DialogManagerMessaging.MessageType messageType = (DialogManagerMessaging.MessageType)message.MessageType;
             if (messageType == DialogManagerMessaging.MessageType.DialogClosed)
             {
                 Guid closedDialogHandle   = (Guid)message.MessageData[DialogManagerMessaging.DIALOG_HANDLE];
                 DialogResult dialogResult = (DialogResult)message.MessageData[DialogManagerMessaging.DIALOG_RESULT];
                 if (closedDialogHandle == dialogHandleId)
                 {
                     if (handler != null)
                     {
                         handler(dialogResult);
                     }
                     return(true);
                 }
             }
         }
         return(false);
     }, true);
     _watcher.Start();
 }
예제 #2
0
 public DialogCloseWatcher(object owner, Guid dialogHandleId, CloseHandlerDlgt handler)
 {
   _watcher = new MessageWatcher(owner, DialogManagerMessaging.CHANNEL, message =>
     {
       if (message.ChannelName == DialogManagerMessaging.CHANNEL)
       {
         DialogManagerMessaging.MessageType messageType = (DialogManagerMessaging.MessageType) message.MessageType;
         if (messageType == DialogManagerMessaging.MessageType.DialogClosed)
         {
           Guid closedDialogHandle = (Guid) message.MessageData[DialogManagerMessaging.DIALOG_HANDLE];
           DialogResult dialogResult = (DialogResult) message.MessageData[DialogManagerMessaging.DIALOG_RESULT];
           if (closedDialogHandle == dialogHandleId)
           {
             if (handler != null)
               handler(dialogResult);
             return true;
           }
         }
       }
       return false;
     }, true);
   _watcher.Start();
 }