Table of Contents

Class BasePropertyValidation<TViewModel>

Namespace
ReactiveUI.Validation.Components
Assembly
ReactiveUI.Validation.dll

Base class for items which are used to build a ValidationContext.

public abstract class BasePropertyValidation<TViewModel> : ReactiveObject, IDisposable, IPropertyValidationComponent, IValidationComponent, IValidatesProperties

Type Parameters

TViewModel
Base class for items which are used to build a .
Inheritance
BasePropertyValidation<TViewModel>
Implements
Derived
Extension Methods
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Expression<Func<TSender, T12>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, IObservedChange<TSender, T11>, IObservedChange<TSender, T12>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Expression<Func<TSender, T12>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, IObservedChange<TSender, T11>, IObservedChange<TSender, T12>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Expression<Func<TSender, T12>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, IObservedChange<TSender, T11>, IObservedChange<TSender, T12>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Expression<Func<TSender, T12>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, IObservedChange<TSender, T11>, IObservedChange<TSender, T12>, TRet>)

Constructors

BasePropertyValidation()

Initializes a new instance of the BasePropertyValidation<TViewModel> class. Subscribe to the valid subject so we can assign the validity.

protected BasePropertyValidation()

Properties

IsValid

Gets a value indicating whether the validation is currently valid or not.

public bool IsValid { get; }

Property Value

bool

Properties

Gets the properties associated with this validation component.

public IEnumerable<string> Properties { get; }

Property Value

IEnumerable<string>

PropertyCount

Gets the total number of properties referenced.

public int PropertyCount { get; }

Property Value

int

Text

Gets the current (optional) validation message.

public IValidationText? Text { get; }

Property Value

IValidationText

ValidationStatusChange

Gets the public mechanism indicating that the validation state has changed.

public IObservable<IValidationState> ValidationStatusChange { get; }

Property Value

IObservable<IValidationState>

Methods

AddProperty<TProp>(Expression<Func<TViewModel, TProp>>)

Adds a property to the list of this which this validation is associated with.

protected void AddProperty<TProp>(Expression<Func<TViewModel, TProp>> property)

Parameters

property Expression<Func<TViewModel, TProp>>

ViewModel property.

Type Parameters

TProp

Any type.

ContainsPropertyName(string, bool)

Determine if a property name is actually contained within this.

public bool ContainsPropertyName(string propertyName, bool exclusively = false)

Parameters

propertyName string

ViewModel property name.

exclusively bool

Indicates if the property to find is unique.

Returns

bool

Returns true if it contains the property, otherwise false.

Dispose()

public void Dispose()

Dispose(bool)

Disposes of the managed resources.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

If its getting called by the Dispose() method.

GetValidationChangeObservable()

Get the validation change observable, implemented by concrete classes.

protected abstract IObservable<IValidationState> GetValidationChangeObservable()

Returns

IObservable<IValidationState>

Returns the IValidationState collection.