private void EnsureCompositeErrors()
        {
            if (compositedValidationResults != null)
            {
                return;
            }

            compositedValidationResults = new CompositeValidationResultsCollection();
            compositedValidationResults.Add(base.ValidationResults);

            foreach (var childProperty in ChildProperties)
            {
                compositedValidationResults.Add(childProperty.ValidationResults);
            }
        }
Example #2
0
        /// <summary>
        /// Indicates the object is being disposed.
        /// </summary>
        /// <param name="disposing">Indicates <see cref="ViewModel.Dispose(bool)"/> was invoked through an explicit call to <see cref="ViewModel.Dispose()"/> instead of a finalizer call.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (childProperties != null)
                {
                    foreach (var childProperty in this.childProperties)
                    {
                        childProperty.Dispose();
                    }
                }

                childProperties = null;

                if (compositedValidationResults != null)
                {
                    compositedValidationResults.Clear();
                    compositedValidationResults = null;
                }

                foreach (IDisposable error in validationResults)
                {
                    error.Dispose();
                }
                if (bindableProproperty != null)
                {
                    bindableProproperty.Dispose();
                }
                validationResults.Clear();

            }

            base.Dispose(disposing);
        }
        private void EnsureCompositeErrors()
        {
            if (compositedValidationResults != null) return;

            compositedValidationResults = new CompositeValidationResultsCollection();
            compositedValidationResults.Add(base.ValidationResults);

            foreach (var childProperty in ChildProperties)
            {
                compositedValidationResults.Add(childProperty.ValidationResults);
            }
        }