Catel.Windows.Controls.ContentView.FindParentViewModel C# (CSharp) Метод

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

Finds the parent viewmodel.
private FindParentViewModel ( ) : object
Результат object
        private object FindParentViewModel()
        {
            var viewModel = BindingContext as IViewModel;
            var relationalViewModel = BindingContext as IRelationalViewModel;

            object parentViewModel = null;
            if (viewModel != null && relationalViewModel != null)
            {
                var parent = Parent;
                while (parentViewModel == null && parent != null)
                {
                    var parentViewModelAsRelationalViewModel = parent.BindingContext as IRelationalViewModel;
                    var parentViewModelAsViewModel = parent.BindingContext as IViewModel;
                    if (parentViewModelAsViewModel != null && parentViewModelAsRelationalViewModel != null && !ReferenceEquals(parent.BindingContext, viewModel))
                    {
                        parentViewModel = parentViewModelAsViewModel;
                    }
                    else
                    {
                        parent = parent.Parent;
                    }
                }
            }

            return parentViewModel;
        }
    }