ViewModelActivator Class

Summary

ViewModelActivator is a helper class that you instantiate in your ViewModel classes in order to help with Activation. Views will internally call this class when the corresponding View comes on screen. This means you can set up resources such as subscriptions to global objects that should be cleaned up on exit. Once you instantiate this class, use the WhenActivated method to register what to do when activated. View Activation is **not** the same as being loaded / unloaded; Views are Activated when they *enter* the Visual Tree, and are Deactivated when they *leave* the Visual Tree. This is a critical difference when it comes to views that are recycled, such as UITableViews or Virtualizing ScrollViews. Create this class solely in the **Base Class** of any classes that inherit from this class (i.e. if you create a FooViewModel that supports activation, the instance should be protected and a child BarViewModel should use the existing ViewModelActivator). NOTE: You **must** set up Activation in the corresponding View when using ViewModel Activation.
Namespace
ReactiveUI
Interfaces
  • IDisposable
Base Types
  • object
graph BT Type-->Base0["object"] Type-.->Interface0["IDisposable"] Type["ViewModelActivator"] class Type type-node

Syntax

public sealed class ViewModelActivator : IDisposable

Constructors

Name Summary
ViewModelActivator() Initializes a new instance of the ViewModelActivator class.

Properties

Name Value Summary
Activated IObservable<Unit>
Gets a observable which will tick every time the Activator is activated.
Deactivated IObservable<Unit>
Gets a observable observable which will tick every time the Activator is deactivated.

Methods

Name Value Summary
Activate() IDisposable
This method is called by the framework when the corresponding View is activated. Call this method in unit tests to simulate a ViewModel being activated.
Deactivate(bool) void
This method is called by the framework when the corresponding View is deactivated.
Dispose() void

Extension Methods

Name Value Summary
BindCommand<ViewModelActivator, TViewModel, TProp, TControl, TParam>(TViewModel, Expression<Func<TViewModel, TProp>>, Expression<Func<ViewModelActivator, TControl>>, Expression<Func<TViewModel, TParam>>, string) IReactiveBinding<TView, TViewModel, TProp>
Bind a command from the ViewModel to an explicitly specified control on the View.
BindCommand<ViewModelActivator, TViewModel, TProp, TControl, TParam>(TViewModel, Expression<Func<TViewModel, TProp>>, Expression<Func<ViewModelActivator, TControl>>, IObservable<TParam>, string) IReactiveBinding<TView, TViewModel, TProp>
Bind a command from the ViewModel to an explicitly specified control on the View.
BindCommand<ViewModelActivator, TViewModel, TProp, TControl>(TViewModel, Expression<Func<TViewModel, TProp>>, Expression<Func<ViewModelActivator, TControl>>, string) IReactiveBinding<TView, TViewModel, TProp>
Bind a command from the ViewModel to an explicitly specified control on the View.
DisposeWith<ViewModelActivator>(CompositeDisposable) T
Ensures the provided disposable is disposed with the specified CompositeDisposable.
ObservableForProperty<ViewModelActivator, TValue, TRet>(Expression<Func<ViewModelActivator, TValue>>, Func<TValue, TRet>, bool) IObservable<TRet>
ObservableForProperty returns an Observable representing the property change notifications for a specific property on a ReactiveObject, running the IObservedChange through a Selector function.
ObservableForProperty<ViewModelActivator, TValue>(Expression<Func<ViewModelActivator, TValue>>, bool, bool) IObservable<IObservedChange<TSender, TValue>>
ObservableForProperty returns an Observable representing the property change notifications for a specific property on a ReactiveObject. This method (unlike other Observables that return IObservedChange) guarantees that the Value property of the IObservedChange is set.
SubscribeToExpressionChain<ViewModelActivator, TValue>(Expression, bool, bool, bool) IObservable<IObservedChange<TSender, TValue>>
Creates a observable which will subscribe to the each property and sub property specified in the Expression. eg It will subscribe to x => x.Property1.Property2.Property3 each property in the lambda expression. It will then provide updates to the last value in the chain.
WhenAny<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Expression<Func<ViewModelActivator, T9>>, Expression<Func<ViewModelActivator, T10>>, Expression<Func<ViewModelActivator, T11>>, Expression<Func<ViewModelActivator, T12>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, T4>, IObservedChange<ViewModelActivator, T5>, IObservedChange<ViewModelActivator, T6>, IObservedChange<ViewModelActivator, T7>, IObservedChange<ViewModelActivator, T8>, IObservedChange<ViewModelActivator, T9>, IObservedChange<ViewModelActivator, T10>, IObservedChange<ViewModelActivator, T11>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Expression<Func<ViewModelActivator, T9>>, Expression<Func<ViewModelActivator, T10>>, Expression<Func<ViewModelActivator, T11>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, T4>, IObservedChange<ViewModelActivator, T5>, IObservedChange<ViewModelActivator, T6>, IObservedChange<ViewModelActivator, T7>, IObservedChange<ViewModelActivator, T8>, IObservedChange<ViewModelActivator, T9>, IObservedChange<ViewModelActivator, T10>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Expression<Func<ViewModelActivator, T9>>, Expression<Func<ViewModelActivator, T10>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, T4>, IObservedChange<ViewModelActivator, T5>, IObservedChange<ViewModelActivator, T6>, IObservedChange<ViewModelActivator, T7>, IObservedChange<ViewModelActivator, T8>, IObservedChange<ViewModelActivator, T9>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Expression<Func<ViewModelActivator, T9>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, T4>, IObservedChange<ViewModelActivator, T5>, IObservedChange<ViewModelActivator, T6>, IObservedChange<ViewModelActivator, T7>, IObservedChange<ViewModelActivator, T8>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, T4>, IObservedChange<ViewModelActivator, T5>, IObservedChange<ViewModelActivator, T6>, IObservedChange<ViewModelActivator, T7>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, T4>, IObservedChange<ViewModelActivator, T5>, IObservedChange<ViewModelActivator, T6>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, T4>, IObservedChange<ViewModelActivator, T5>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, T4>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, T3>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, T2>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Func<IObservedChange<ViewModelActivator, T1>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1>(Expression<Func<ViewModelActivator, T1>>, Func<IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Expression, Func<IObservedChange<ViewModelActivator, object>, IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression, Func<IObservedChange<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Expression<Func<ViewModelActivator, IObservable<T5>>>, Expression<Func<ViewModelActivator, IObservable<T6>>>, Expression<Func<ViewModelActivator, IObservable<T7>>>, Expression<Func<ViewModelActivator, IObservable<T8>>>, Expression<Func<ViewModelActivator, IObservable<T9>>>, Expression<Func<ViewModelActivator, IObservable<T10>>>, Expression<Func<ViewModelActivator, IObservable<T11>>>, Expression<Func<ViewModelActivator, IObservable<T12>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Expression<Func<ViewModelActivator, IObservable<T5>>>, Expression<Func<ViewModelActivator, IObservable<T6>>>, Expression<Func<ViewModelActivator, IObservable<T7>>>, Expression<Func<ViewModelActivator, IObservable<T8>>>, Expression<Func<ViewModelActivator, IObservable<T9>>>, Expression<Func<ViewModelActivator, IObservable<T10>>>, Expression<Func<ViewModelActivator, IObservable<T11>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Expression<Func<ViewModelActivator, IObservable<T5>>>, Expression<Func<ViewModelActivator, IObservable<T6>>>, Expression<Func<ViewModelActivator, IObservable<T7>>>, Expression<Func<ViewModelActivator, IObservable<T8>>>, Expression<Func<ViewModelActivator, IObservable<T9>>>, Expression<Func<ViewModelActivator, IObservable<T10>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Expression<Func<ViewModelActivator, IObservable<T5>>>, Expression<Func<ViewModelActivator, IObservable<T6>>>, Expression<Func<ViewModelActivator, IObservable<T7>>>, Expression<Func<ViewModelActivator, IObservable<T8>>>, Expression<Func<ViewModelActivator, IObservable<T9>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Expression<Func<ViewModelActivator, IObservable<T5>>>, Expression<Func<ViewModelActivator, IObservable<T6>>>, Expression<Func<ViewModelActivator, IObservable<T7>>>, Expression<Func<ViewModelActivator, IObservable<T8>>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Expression<Func<ViewModelActivator, IObservable<T5>>>, Expression<Func<ViewModelActivator, IObservable<T6>>>, Expression<Func<ViewModelActivator, IObservable<T7>>>, Func<T1, T2, T3, T4, T5, T6, T7, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Expression<Func<ViewModelActivator, IObservable<T5>>>, Expression<Func<ViewModelActivator, IObservable<T6>>>, Func<T1, T2, T3, T4, T5, T6, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3, T4, T5>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Expression<Func<ViewModelActivator, IObservable<T5>>>, Func<T1, T2, T3, T4, T5, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3, T4>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Expression<Func<ViewModelActivator, IObservable<T4>>>, Func<T1, T2, T3, T4, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2, T3>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Expression<Func<ViewModelActivator, IObservable<T3>>>, Func<T1, T2, T3, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet, T1, T2>(Expression<Func<ViewModelActivator, IObservable<T1>>>, Expression<Func<ViewModelActivator, IObservable<T2>>>, Func<T1, T2, TRet>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyObservable<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>, Expression<Func<ViewModelActivator, IObservable<TRet>>>) IObservable<TRet>
WhenAnyValue<ViewModelActivator, T1, T2, T3, T4, T5, T6, T7>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>) IObservable<Tuple<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<ViewModelActivator, T1, T2, T3, T4, T5, T6>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>) IObservable<Tuple<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<ViewModelActivator, T1, T2, T3, T4, T5>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>) IObservable<Tuple<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<ViewModelActivator, T1, T2, T3, T4>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>) IObservable<Tuple<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<ViewModelActivator, T1, T2, T3>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>) IObservable<Tuple<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<ViewModelActivator, T1, T2>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>) IObservable<Tuple<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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Expression<Func<ViewModelActivator, T9>>, Expression<Func<ViewModelActivator, T10>>, Expression<Func<ViewModelActivator, T11>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Expression<Func<ViewModelActivator, T9>>, Expression<Func<ViewModelActivator, T10>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Expression<Func<ViewModelActivator, T9>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, T8>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, T7>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6, T7>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, T6>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5, T6>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, T5>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4, T5>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, T4>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3, T4>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, T3>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2, T3>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, T2>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1, T2>(Expression<Func<ViewModelActivator, T1>>, Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet, T1>(Expression<Func<ViewModelActivator, 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<ViewModelActivator, TRet>(Expression<Func<ViewModelActivator, 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.
With<ViewModelActivator, TKey, TField>(Dictionary<TKey, TField>, IDictionary<TKey, TField>) TBuilder
Adds the specified dictionary to the provided dictionary.