Catel.MVVM.Providers.UserControlLogic.OnParentViewModelSavingAsync C# (CSharp) Метод

OnParentViewModelSavingAsync() приватный Метод

Handles the Saving event of the parent ViewModel.
private OnParentViewModelSavingAsync ( object sender, SavingEventArgs e ) : Task
sender object The source of the event.
e SavingEventArgs The instance containing the event data.
Результат Task
        private async Task OnParentViewModelSavingAsync(object sender, SavingEventArgs e)
        {
            // The parent view model is saved, save our view model as well
            if (ViewModel != null)
            {
                if (ReferenceEquals(sender, ViewModel))
                {
                    Log.Warning("Parent view model '{0}' is exactly the same instance as the current view model, ignore Saving event", sender.GetType().FullName);
                    return;
                }

                if (e.Cancel)
                {
                    Log.Info("Parent view model '{0}' is saving, but saving is canceled by another view model, saving of view model '{1}' will not continue", _parentViewModel.GetType(), ViewModel.GetType());
                    return;
                }

                Log.Info("Parent view model '{0}' is saving, saving view model '{1}' as well", _parentViewModel.GetType(), ViewModel.GetType());

                if (!ViewModel.IsClosed)
                {
                    e.Cancel = !await ViewModel.SaveViewModelAsync();
                }
            }
        }