public void Notifies() { var textBox = new System.Windows.Controls.TextBox(); var textBoxEvents = textBox.SubscribeScopeEvents(); var stackPanel = new StackPanel(); var stackPanelEVents = stackPanel.SubscribeScopeEvents(); stackPanel.Children.Add(textBox); var inputTypes = new InputTypeCollection { typeof(System.Windows.Controls.TextBox), typeof(Selector) }; Scope.SetForInputTypes(stackPanel, inputTypes); var validationError = TestValidationError.GetFor(textBox, System.Windows.Controls.TextBox.TextProperty); textBox.SetValidationError(validationError); var expectedEvents = new List<ScopeValidationErrorEventArgs> { new ScopeValidationErrorEventArgs(validationError, ValidationErrorEventAction.Added) }; CollectionAssert.AreEqual(expectedEvents, textBoxEvents, ScopeValidationErrorEventArgsComparer.Default); CollectionAssert.AreEqual(expectedEvents, stackPanelEVents, ScopeValidationErrorEventArgsComparer.Default); textBox.ClearValidationError(validationError); expectedEvents.Add(new ScopeValidationErrorEventArgs(validationError, ValidationErrorEventAction.Removed)); CollectionAssert.AreEqual(expectedEvents, textBoxEvents, ScopeValidationErrorEventArgsComparer.Default); CollectionAssert.AreEqual(expectedEvents, stackPanelEVents, ScopeValidationErrorEventArgsComparer.Default); }