Table of Contents

Class CommandBinder

Namespace
ReactiveUI
Assembly
ReactiveUI.dll

Various helpers to bind View controls and ViewModel commands together.

public static class CommandBinder : Object
Inheritance
CommandBinder

Methods

BindCommand<TView, TViewModel, TProp, TControl>(TView, TViewModel?, Expression<Func<TViewModel, TProp?>>, Expression<Func<TView, TControl>>, string?)

Bind a command from the ViewModel to an explicitly specified control on the View.

public static IReactiveBinding<TView, TProp> BindCommand<TView, TViewModel, TProp, TControl>(this TView view, TViewModel? viewModel, Expression<Func<TViewModel, TProp?>> propertyName, Expression<Func<TView, TControl>> controlName, string? toEvent = null) where TView : class, IViewFor where TViewModel : class where TProp : ICommand

Parameters

view TView

The View.

viewModel TViewModel

The View model.

propertyName Expression<Func<TViewModel, TProp>>

The ViewModel command to bind.

controlName Expression<Func<TView, TControl>>

The name of the control on the view.

toEvent string

If specified, bind to the specific event instead of the default. NOTE: If this parameter is used inside WhenActivated, it's important to dispose the binding when the view is deactivated.

Returns

IReactiveBinding<TView, TProp>

A class representing the binding. Dispose it to disconnect the binding.

Type Parameters

TView

The view type.

TViewModel

The view model type.

TProp

The property type.

TControl

The control type.

BindCommand<TView, TViewModel, TProp, TControl, TParam>(TView, TViewModel?, Expression<Func<TViewModel, TProp?>>, Expression<Func<TView, TControl>>, IObservable<TParam?>, string?)

Bind a command from the ViewModel to an explicitly specified control on the View.

public static IReactiveBinding<TView, TProp> BindCommand<TView, TViewModel, TProp, TControl, TParam>(this TView view, TViewModel? viewModel, Expression<Func<TViewModel, TProp?>> propertyName, Expression<Func<TView, TControl>> controlName, IObservable<TParam?> withParameter, string? toEvent = null) where TView : class, IViewFor where TViewModel : class where TProp : ICommand

Parameters

view TView

The View.

viewModel TViewModel

The View model.

propertyName Expression<Func<TViewModel, TProp>>

The ViewModel command to bind.

controlName Expression<Func<TView, TControl>>

The name of the control on the view.

withParameter IObservable<TParam>

The ViewModel property to pass as the param of the ICommand.

toEvent string

If specified, bind to the specific event instead of the default. NOTE: If this parameter is used inside WhenActivated, it's important to dispose the binding when the view is deactivated.

Returns

IReactiveBinding<TView, TProp>

A class representing the binding. Dispose it to disconnect the binding.

Type Parameters

TView

The view type.

TViewModel

The view model type.

TProp

The property type.

TControl

The control type.

TParam

The parameter type.

BindCommand<TView, TViewModel, TProp, TControl, TParam>(TView, TViewModel?, Expression<Func<TViewModel, TProp?>>, Expression<Func<TView, TControl>>, Expression<Func<TViewModel, TParam?>>, string?)

Bind a command from the ViewModel to an explicitly specified control on the View.

public static IReactiveBinding<TView, TProp> BindCommand<TView, TViewModel, TProp, TControl, TParam>(this TView view, TViewModel? viewModel, Expression<Func<TViewModel, TProp?>> propertyName, Expression<Func<TView, TControl>> controlName, Expression<Func<TViewModel, TParam?>> withParameter, string? toEvent = null) where TView : class, IViewFor where TViewModel : class where TProp : ICommand

Parameters

view TView

The View.

viewModel TViewModel

The View model.

propertyName Expression<Func<TViewModel, TProp>>

The ViewModel command to bind.

controlName Expression<Func<TView, TControl>>

The name of the control on the view.

withParameter Expression<Func<TViewModel, TParam>>

The ViewModel property to pass as the param of the ICommand.

toEvent string

If specified, bind to the specific event instead of the default. NOTE: If this parameter is used inside WhenActivated, it's important to dispose the binding when the view is deactivated.

Returns

IReactiveBinding<TView, TProp>

A class representing the binding. Dispose it to disconnect the binding.

Type Parameters

TView

The view type.

TViewModel

The view model type.

TProp

The property type.

TControl

The control type.

TParam

The parameter type.