The recording of the first ever ReactiveUI virtual conference is available on our YouTube Channel.

IRoutableViewModel Interface

Summary

Implement this interface for ViewModels that can be navigated to.
Namespace
ReactiveUI
Interfaces
  • IReactiveObject
  • INotifyPropertyChanged
  • INotifyPropertyChanging
  • IEnableLogger
Implementing Types
graph BT Type-.->Interface0["IReactiveObject"] click Interface0 "/api/ReactiveUI/IReactiveObject" Type-.->Interface1["INotifyPropertyChanged"] Type-.->Interface2["INotifyPropertyChanging"] Type-.->Interface3["IEnableLogger"] Type["IRoutableViewModel"] class Type type-node Implementing0["MockViewModel"]-.->Type click Implementing0 "/api/ReactiveUI.Benchmarks/MockViewModel"

Syntax

public interface IRoutableViewModel : IReactiveObject, INotifyPropertyChanged, 
    INotifyPropertyChanging, IEnableLogger

Properties

Name Value Summary
HostScreen IScreen
Gets the IScreen that this ViewModel is currently being shown in. This is usually passed into the ViewModel in the Constructor and saved as a ReadOnly Property.
UrlPathSegment string
Gets a string token representing the current ViewModel, such as 'login' or 'user'.

Extension Methods

Name Value Summary
AutoPersist<IRoutableViewModel, TDontCare>(Func<IRoutableViewModel, IObservable<Unit>>, IObservable<TDontCare>, TimeSpan?) IDisposable
AutoPersist allows you to automatically call a method when an object has changed, throttling on a certain interval. Note that this object must mark its persistable properties via the [DataMember] attribute. Changes to properties not marked with DataMember will not trigger the object to be saved.
AutoPersist<IRoutableViewModel>(Func<IRoutableViewModel, IObservable<Unit>>, TimeSpan?) IDisposable
AutoPersist allows you to automatically call a method when an object has changed, throttling on a certain interval. Note that this object must mark its persistable properties via the [DataMember] attribute. Changes to properties not marked with DataMember will not trigger the object to be saved.
BindCommand<IRoutableViewModel, TViewModel, TProp, TControl, TParam>(TViewModel, Expression<Func<TViewModel, TProp>>, Expression<Func<IRoutableViewModel, TControl>>, Expression<Func<TViewModel, TParam>>, string) IReactiveBinding<TView, TProp>
Bind a command from the ViewModel to an explicitly specified control on the View.
BindCommand<IRoutableViewModel, TViewModel, TProp, TControl, TParam>(TViewModel, Expression<Func<TViewModel, TProp>>, Expression<Func<IRoutableViewModel, TControl>>, IObservable<TParam>, string) IReactiveBinding<TView, TProp>
Bind a command from the ViewModel to an explicitly specified control on the View.
BindCommand<IRoutableViewModel, TViewModel, TProp, TControl>(TViewModel, Expression<Func<TViewModel, TProp>>, Expression<Func<IRoutableViewModel, TControl>>, string) IReactiveBinding<TView, TProp>
Bind a command from the ViewModel to an explicitly specified control on the View.
BindValidation<IRoutableViewModel, TViewModel, TViewModelProperty, TViewProperty>(TViewModel, Expression<Func<TViewModel, TViewModelProperty>>, Expression<Func<IRoutableViewModel, TViewProperty>>, IValidationTextFormatter<string>) IDisposable
Binds the specified ViewModel property validation to the View property.
BindValidation<IRoutableViewModel, TViewModel, TViewModelProperty>(TViewModel, Expression<Func<TViewModel, TViewModelProperty>>, TextInputLayout, IValidationTextFormatter<string>) IDisposable
Platform binding to the TextInputLayout.
BindValidation<IRoutableViewModel, TViewModel, TViewModelProperty>(TViewModel, Expression<Func<TViewModel, TViewModelProperty>>, TextInputLayout, IValidationTextFormatter<string>) IDisposable
Platform binding to the TextInputLayout.
BindValidation<IRoutableViewModel, TViewModel, TViewProperty>(TViewModel, Expression<Func<IRoutableViewModel, TViewProperty>>, IValidationTextFormatter<string>) IDisposable
Binds the overall validation of a ViewModel to a specified View property.
BindValidation<IRoutableViewModel, TViewModel, TViewProperty>(TViewModel, Expression<Func<TViewModel, ValidationHelper>>, Expression<Func<IRoutableViewModel, TViewProperty>>, IValidationTextFormatter<string>) IDisposable
Binds a ValidationHelper from a ViewModel to a specified View property.
BindValidation<IRoutableViewModel, TViewModel>(TViewModel, Expression<Func<TViewModel, ValidationHelper>>, TextInputLayout, IValidationTextFormatter<string>) IDisposable
Platform binding to the TextInputLayout.
BindValidation<IRoutableViewModel, TViewModel>(TViewModel, Expression<Func<TViewModel, ValidationHelper>>, TextInputLayout, IValidationTextFormatter<string>) IDisposable
Platform binding to the TextInputLayout.
BindValidationEx<IRoutableViewModel, TViewModel, TViewModelProperty>(TViewModel, Expression<Func<TViewModel, TViewModelProperty>>, TextInputLayout, IValidationTextFormatter<string>) IDisposable
Platform binding to the TextInputLayout.
BindValidationEx<IRoutableViewModel, TViewModel, TViewModelProperty>(TViewModel, Expression<Func<TViewModel, TViewModelProperty>>, TextInputLayout, IValidationTextFormatter<string>) IDisposable
Platform binding to the TextInputLayout.
InvokeViewModelAction<T>(Action<T>) object
This is a thing I lifted from Prism.
RaiseAndSetIfChanged<IRoutableViewModel, TRet>(TRet, TRet, string) TRet
RaiseAndSetIfChanged fully implements a Setter for a read-write property on a ReactiveObject, using CallerMemberName to raise the notification and the ref to the backing field to set the property.
RaisePropertyChanged<IRoutableViewModel>(string) void
Use this method in your ReactiveObject classes when creating custom properties where raiseAndSetIfChanged doesn't suffice.
RaisePropertyChanging<IRoutableViewModel>(string) void
Use this method in your ReactiveObject classes when creating custom properties where raiseAndSetIfChanged doesn't suffice.
SubscribePropertyChangedEvents<IRoutableViewModel>() void
Use this method for enabling classic PropertyChanged events when you are implementing IReactiveObject manually.
SubscribePropertyChangingEvents<IRoutableViewModel>() void
Use this method for enabling classic PropertyChanging events when you are implementing IReactiveObject manually.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Expression<Func<IRoutableViewModel, T9>>, Expression<Func<IRoutableViewModel, T10>>, Expression<Func<IRoutableViewModel, T11>>, Expression<Func<IRoutableViewModel, T12>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, IObservedChange<IRoutableViewModel, T5>, IObservedChange<IRoutableViewModel, T6>, IObservedChange<IRoutableViewModel, T7>, IObservedChange<IRoutableViewModel, T8>, IObservedChange<IRoutableViewModel, T9>, IObservedChange<IRoutableViewModel, T10>, IObservedChange<IRoutableViewModel, T11>, IObservedChange<IRoutableViewModel, T12>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Expression<Func<IRoutableViewModel, T9>>, Expression<Func<IRoutableViewModel, T10>>, Expression<Func<IRoutableViewModel, T11>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, IObservedChange<IRoutableViewModel, T5>, IObservedChange<IRoutableViewModel, T6>, IObservedChange<IRoutableViewModel, T7>, IObservedChange<IRoutableViewModel, T8>, IObservedChange<IRoutableViewModel, T9>, IObservedChange<IRoutableViewModel, T10>, IObservedChange<IRoutableViewModel, T11>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Expression<Func<IRoutableViewModel, T9>>, Expression<Func<IRoutableViewModel, T10>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, IObservedChange<IRoutableViewModel, T5>, IObservedChange<IRoutableViewModel, T6>, IObservedChange<IRoutableViewModel, T7>, IObservedChange<IRoutableViewModel, T8>, IObservedChange<IRoutableViewModel, T9>, IObservedChange<IRoutableViewModel, T10>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Expression<Func<IRoutableViewModel, T9>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, IObservedChange<IRoutableViewModel, T5>, IObservedChange<IRoutableViewModel, T6>, IObservedChange<IRoutableViewModel, T7>, IObservedChange<IRoutableViewModel, T8>, IObservedChange<IRoutableViewModel, T9>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, IObservedChange<IRoutableViewModel, T5>, IObservedChange<IRoutableViewModel, T6>, IObservedChange<IRoutableViewModel, T7>, IObservedChange<IRoutableViewModel, T8>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, IObservedChange<IRoutableViewModel, T5>, IObservedChange<IRoutableViewModel, T6>, IObservedChange<IRoutableViewModel, T7>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, IObservedChange<IRoutableViewModel, T5>, IObservedChange<IRoutableViewModel, T6>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4, T5>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, IObservedChange<IRoutableViewModel, T5>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3, T4>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, IObservedChange<IRoutableViewModel, T4>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2, T3>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, IObservedChange<IRoutableViewModel, T3>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1, T2>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Func<IObservedChange<IRoutableViewModel, T1>, IObservedChange<IRoutableViewModel, T2>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAny<IRoutableViewModel, TRet, T1>(Expression<Func<IRoutableViewModel, T1>>, Func<IObservedChange<IRoutableViewModel, T1>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Expression?, Func<IObservedChange<IRoutableViewModel, object>, IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyDynamic<IRoutableViewModel, TRet>(Expression?, Func<IObservedChange<IRoutableViewModel, object>, TRet>) IObservable<TRet>
WhenAny allows you to observe whenever one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Expression<Func<IRoutableViewModel, IObservable<T5>>>, Expression<Func<IRoutableViewModel, IObservable<T6>>>, Expression<Func<IRoutableViewModel, IObservable<T7>>>, Expression<Func<IRoutableViewModel, IObservable<T8>>>, Expression<Func<IRoutableViewModel, IObservable<T9>>>, Expression<Func<IRoutableViewModel, IObservable<T10>>>, Expression<Func<IRoutableViewModel, IObservable<T11>>>, Expression<Func<IRoutableViewModel, IObservable<T12>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Expression<Func<IRoutableViewModel, IObservable<T5>>>, Expression<Func<IRoutableViewModel, IObservable<T6>>>, Expression<Func<IRoutableViewModel, IObservable<T7>>>, Expression<Func<IRoutableViewModel, IObservable<T8>>>, Expression<Func<IRoutableViewModel, IObservable<T9>>>, Expression<Func<IRoutableViewModel, IObservable<T10>>>, Expression<Func<IRoutableViewModel, IObservable<T11>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Expression<Func<IRoutableViewModel, IObservable<T5>>>, Expression<Func<IRoutableViewModel, IObservable<T6>>>, Expression<Func<IRoutableViewModel, IObservable<T7>>>, Expression<Func<IRoutableViewModel, IObservable<T8>>>, Expression<Func<IRoutableViewModel, IObservable<T9>>>, Expression<Func<IRoutableViewModel, IObservable<T10>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Expression<Func<IRoutableViewModel, IObservable<T5>>>, Expression<Func<IRoutableViewModel, IObservable<T6>>>, Expression<Func<IRoutableViewModel, IObservable<T7>>>, Expression<Func<IRoutableViewModel, IObservable<T8>>>, Expression<Func<IRoutableViewModel, IObservable<T9>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Expression<Func<IRoutableViewModel, IObservable<T5>>>, Expression<Func<IRoutableViewModel, IObservable<T6>>>, Expression<Func<IRoutableViewModel, IObservable<T7>>>, Expression<Func<IRoutableViewModel, IObservable<T8>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Expression<Func<IRoutableViewModel, IObservable<T5>>>, Expression<Func<IRoutableViewModel, IObservable<T6>>>, Expression<Func<IRoutableViewModel, IObservable<T7>>>, Func<T1, T2, T3, T4, T5, T6, T7, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Expression<Func<IRoutableViewModel, IObservable<T5>>>, Expression<Func<IRoutableViewModel, IObservable<T6>>>, Func<T1, T2, T3, T4, T5, T6, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4, T5>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Expression<Func<IRoutableViewModel, IObservable<T5>>>, Func<T1, T2, T3, T4, T5, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3, T4>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Expression<Func<IRoutableViewModel, IObservable<T4>>>, Func<T1, T2, T3, T4, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2, T3>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Expression<Func<IRoutableViewModel, IObservable<T3>>>, Func<T1, T2, T3, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet, T1, T2>(Expression<Func<IRoutableViewModel, IObservable<T1>>>, Expression<Func<IRoutableViewModel, IObservable<T2>>>, Func<T1, T2, TRet>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Observe a observable which is set to a property, and automatically subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyObservable<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>, Expression<Func<IRoutableViewModel, IObservable<TRet>>>) IObservable<TRet>
Monitor a property that is an observable, and subscribe to the most recent emitted value.
WhenAnyValue<IRoutableViewModel, T1, T2, T3, T4, T5, T6, T7>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>) IObservable<(T1, T2, T3, T4, T5, T6, T7)>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, T1, T2, T3, T4, T5, T6>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>) IObservable<(T1, T2, T3, T4, T5, T6)>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, T1, T2, T3, T4, T5>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>) IObservable<(T1, T2, T3, T4, T5)>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, T1, T2, T3, T4>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>) IObservable<(T1, T2, T3, T4)>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, T1, T2, T3>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>) IObservable<(T1, T2, T3)>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, T1, T2>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>) IObservable<(T1, T2)>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Expression<Func<IRoutableViewModel, T9>>, Expression<Func<IRoutableViewModel, T10>>, Expression<Func<IRoutableViewModel, T11>>, Expression<Func<IRoutableViewModel, T12>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Expression<Func<IRoutableViewModel, T9>>, Expression<Func<IRoutableViewModel, T10>>, Expression<Func<IRoutableViewModel, T11>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Expression<Func<IRoutableViewModel, T9>>, Expression<Func<IRoutableViewModel, T10>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Expression<Func<IRoutableViewModel, T9>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Expression<Func<IRoutableViewModel, T8>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6, T7>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Expression<Func<IRoutableViewModel, T7>>, Func<T1, T2, T3, T4, T5, T6, T7, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4, T5, T6>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Expression<Func<IRoutableViewModel, T6>>, Func<T1, T2, T3, T4, T5, T6, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4, T5>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Expression<Func<IRoutableViewModel, T5>>, Func<T1, T2, T3, T4, T5, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3, T4>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Expression<Func<IRoutableViewModel, T4>>, Func<T1, T2, T3, T4, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2, T3>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Expression<Func<IRoutableViewModel, T3>>, Func<T1, T2, T3, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1, T2>(Expression<Func<IRoutableViewModel, T1>>, Expression<Func<IRoutableViewModel, T2>>, Func<T1, T2, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet, T1>(Expression<Func<IRoutableViewModel, T1>>, Func<T1, TRet>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of one or more properties on an object have changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenAnyValue<IRoutableViewModel, TRet>(Expression<Func<IRoutableViewModel, TRet>>) IObservable<TRet>
WhenAnyValue allows you to observe whenever the value of a property on an object has changed, providing an initial value when the Observable is set up, unlike ObservableForProperty(). Use this method in constructors to set up bindings between properties that also need an initial setup.
WhenNavigatedTo(Func<IDisposable>) IDisposable
This method allows you to set up connections that only operate while the ViewModel has focus, and cleans up when the ViewModel loses focus.
WhenNavigatedToObservable() IObservable<Unit>

This method will return an observable that fires events every time the topmost ViewModel in the navigation stack is this ViewModel. This allows you to set up connections that only operate while the ViewModel has focus.

The observable will complete when the ViewModel is removed completely from the navigation stack. If your ViewModel can be _removed_ from the navigation stack and then reused later, you must call this method and resubscribe each time it is reused.

WhenNavigatingFromObservable() IObservable<Unit>

This method will return an observable that fires events _just before_ the ViewModel is no longer the topmost ViewModel in the navigation stack. This allows you to clean up anything before losing focus.

The observable will complete when the ViewModel is removed completely from the navigation stack. If your ViewModel can be _removed_ from the navigation stack and then reused later, you must call this method and resubscribe each time it is reused.

With<IRoutableViewModel, TKey, TField>(Dictionary<TKey, TField>, IDictionary<TKey, TField>) TBuilder
Adds the specified dictionary to the provided dictionary.