/// <summary> /// Defines a custom validator that is executed after an an item of the /// selected collection has changed. /// </summary> /// <remarks> /// The validator is also executed when a revalidation is performed, the /// VM is added to/removed from a collection or any descendant VM has /// changed (a property or its validation state). /// </remarks> public void Custom(Action <CollectionValidationArgs <TOwnerVM, TItemVM> > validationAction) { _operation.PushValidatorBuildActions( DelegateValidator.For(validationAction), ValidationStep.ViewModel ); }
public static IValidator For <TOwnerVM, TTargetVM>( Action <ViewModelValidationArgs <TOwnerVM, TTargetVM> > validationAction ) where TOwnerVM : IViewModel where TTargetVM : IViewModel { return(DelegateValidator.For( ViewModelValidationArgs <TOwnerVM, TTargetVM> .Create, validationAction )); }
public static IValidator For <TOwnerVM, TItemVM, TValue>( Action <CollectionValidationArgs <TOwnerVM, TItemVM, TValue> > validationAction ) where TOwnerVM : IViewModel where TItemVM : IViewModel { return(DelegateValidator.For( CollectionValidationArgs <TOwnerVM, TItemVM, TValue> .Create, validationAction )); }
public static IValidator For <TOwnerVM, TTargetVM, TValue>( Action <PropertyValidationArgs <TOwnerVM, TTargetVM, TValue> > validationAction ) where TOwnerVM : IViewModel where TTargetVM : IViewModel { return(DelegateValidator.For( PropertyValidationArgs <TOwnerVM, TTargetVM, TValue> .Create, validationAction )); }
/// <summary> /// Defines a custom validator that is executed every time the VM or /// any descendant VM has changed. /// </summary> public void CheckViewModel(Action <ViewModelValidationArgs <TOwnerVM, TTarget> > validatorAction) { var op = OperationProvider.GetOperation(); if (!PathSelectsDescendant(op.Path)) { op.EnableViewModelValidationSourceBehavior(); } op.PushValidatorBuildActions( DelegateValidator.For(validatorAction), ValidationStep.ViewModel ); }
/// <summary> /// Defines a custom validator that is executed every time the selected /// property is about to change. /// </summary> /// <remarks> /// The validator is also executed when a revalidation is performed, or /// the VM is added to/removed from a collection. /// </remarks> public void Custom(Action <PropertyValidationArgs <TOwnerVM, TTargetVM, TValue> > validationAction) { Custom(DelegateValidator.For(validationAction)); }