示例#1
0
 public void PostMessage(ViewModelMessageBase message)
 {
     var vm = _parentViewModel;
     while (vm != null)
     {
         if (vm.OnRoutedMessage(this, message))
             return;
         vm = vm._parentViewModel;
     }
     Console.WriteLine($"Unhandled message {message}"); // TODO: remove debugging
 }
示例#2
0
        public void PostMessage(ViewModelMessageBase message)
        {
            var vm = _parentViewModel;

            while (vm != null)
            {
                if (vm.OnRoutedMessage(this, message))
                {
                    return;
                }
                vm = vm._parentViewModel;
            }
            Console.WriteLine($"Unhandled message {message}"); // TODO: remove debugging
        }
示例#3
0
        protected override bool OnRoutedMessage(ViewModelBase sender, ViewModelMessageBase message)
        {
            var openDialog = message as OpenDialogMessage;

            if (openDialog != null && sender == VisibleContent)
            {
                VisibleDialogContent = openDialog.Dialog;
                return(true);
            }

            var hideDialog = message as HideDialogMessage;

            if (hideDialog != null && sender == VisibleDialogContent)
            {
                VisibleDialogContent = null;
                return(true);
            }

            return(false);
        }
示例#4
0
        protected override bool OnRoutedMessage(ViewModelBase sender, ViewModelMessageBase message)
        {
            var showTx = message as ShowTransactionMessage;

            if (showTx != null)
            {
                ShowTransaction(showTx.Transaction);
                return(true);
            }

            var showAccount = message as ShowAccountMessage;

            if (showAccount != null)
            {
                ShowAccount(showAccount.Account);
                return(true);
            }

            var openDialog = message as OpenDialogMessage;

            if (openDialog != null && sender == VisibleContent)
            {
                VisibleDialogContent = openDialog.Dialog;
                return(true);
            }

            var hideDialog = message as HideDialogMessage;

            if (hideDialog != null && sender == VisibleDialogContent)
            {
                VisibleDialogContent = null;
                return(true);
            }

            return(false);
        }
示例#5
0
 /// <summary>
 /// Optionally handles a specific message posted by a child view model.
 /// </summary>
 /// <param name="message">Child message to handle.</param>
 /// <returns>Returns true if the message was handled and should not be propigated to a parent view model.</returns>
 protected virtual bool OnRoutedMessage(ViewModelBase sender, ViewModelMessageBase message)
 {
     return false;
 }
示例#6
0
        protected override bool OnRoutedMessage(ViewModelBase sender, ViewModelMessageBase message)
        {
            var showTx = message as ShowTransactionMessage;
            if (showTx != null)
            {
                ShowTransaction(showTx.Transaction);
                return true;
            }

            var showAccount = message as ShowAccountMessage;
            if (showAccount != null)
            {
                ShowAccount(showAccount.Account);
                return true;
            }

            var openDialog = message as OpenDialogMessage;
            if (openDialog != null && sender == VisibleContent)
            {
                VisibleDialogContent = openDialog.Dialog;
                return true;
            }

            var hideDialog = message as HideDialogMessage;
            if (hideDialog != null && sender == VisibleDialogContent)
            {
                VisibleDialogContent = null;
                return true;
            }

            return false;
        }
示例#7
0
 /// <summary>
 /// Optionally handles a specific message posted by a child view model.
 /// </summary>
 /// <param name="message">Child message to handle.</param>
 /// <returns>Returns true if the message was handled and should not be propigated to a parent view model.</returns>
 protected virtual bool OnRoutedMessage(ViewModelBase sender, ViewModelMessageBase message)
 {
     return(false);
 }