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

ReactiveUI Namespace

Class Types

Class Summary
ActivationForViewFetcher ActivationForViewFetcher is how ReactiveUI determine when a View is activated or deactivated. This is usually only used when porting ReactiveUI to a new UI framework. ActiveationForViewFetcher is how ReactiveUI determine when a View is activated or deactivated. This is usually only used when porting ReactiveUI to a new UI framework.
AndroidCommandBinders Android implementation that provides binding to an ICommand in the ViewModel to a Control in the View.
AndroidObservableForWidgets Android view objects are not Generally Observable™, so hard-code some particularly useful types.
AppKitObservableForProperty AppKitObservableForProperty is an object that knows how to create notifications for a given type of object. Implement this if you are porting RxUI to a new UI toolkit, or generally want to enable WhenAny for another type of object that can be observed in a unique way.
AppSupportJsonSuspensionDriver Loads and saves state to persistent storage.
AutoDataTemplateBindingHook AutoDataTemplateBindingHook is a binding hook that checks ItemsControls that don't have DataTemplates, and assigns a default DataTemplate that loads the View associated with each ViewModel.
AutoPersistHelper Helper extension method class associated with the AutoPersist related functionality.
AutoSuspendHelper Class for helping with Auto Suspending. Auto Suspender helpers will assist with saving out the application state when the application closes or activates. Helps manage android application lifecycle events. AutoSuspend-based App Delegate. To use AutoSuspend with iOS, change your AppDelegate to inherit from this class, then call: Locator.Current.GetService{ISuspensionHost}().SetupDefaultSuspendResume(); This will get your suspension host.

AutoSuspend-based App Delegate. To use AutoSuspend with iOS, change your AppDelegate to inherit from this class, then call:

Locator.Current.GetService.{ISuspensionHost}().SetupDefaultSuspendResume();.

This will fetch your SuspensionHost.

AutoSuspend-based Application. To use AutoSuspend with WinRT, change your Application to inherit from this class, then call: Locator.Current.GetService.<ISuspensionHost>().SetupDefaultSuspendResume(); This will register your suspension host.
BooleanToVisibilityTypeConverter This type convert converts between Boolean and XAML Visibility - the conversionHint is a BooleanToVisibilityHint.
BundleSuspensionDriver Loads and saves state to persistent storage.
ByteToStringTypeConverter Short To String Type Converter.
CanActivateViewFetcher This class implements View Activation for classes that explicitly describe their activation via ICanActivate. This class is used by the framework.
ChangeSetMixin Mixin associated with the DynamicData IChangeSet class.
CollectionViewSectionInformation<TSource, TCell> Class used to extract a common API between UIKit.UICollectionView and UIKit.UICollectionViewCell.
CollectionViewSectionInformation<TSource> Class used to extract a common API between UIKit.UICollectionView and UIKit.UICollectionViewCell.
CombinedReactiveCommand<TParam, TResult> Encapsulates a composite user interaction.
CommandBinder Various helpers to bind View controls and ViewModel commands together.
CommandBinderImplementation Used by the CommandBinder extension methods to handle binding View controls and ViewModel commands.
ComparerChainingExtensions Convenience class to help chain selectors onto existing parent comparers.
ComponentModelTypeConverter Binding Type Converter for component model. The component model binding type converter.
ContextExtensions Extension methods for Context.
ControlFetcherMixin ControlFetcherMixin helps you automatically wire-up Activities and Fragments via property names, similar to Butter Knife, as well as allows you to fetch controls manually. Extension methods associated with the ControlFetcher class.
CreatesCommandBindingViaCommandParameter Class that registers Command Binding and Command Parameter Binding.
CreatesCommandBindingViaEvent This binder is the default binder for connecting to arbitrary events.
DateTimeNSDateConverter Binding Type Converter for DateTime to NSDateTime.
DecimalToStringTypeConverter Decimal To String Type Converter.
DefaultViewLocator Default implementation for IViewLocator. The default ViewModelToViewFunc behavior is to replace instances of "View" with "ViewMode" in the Fully Qualified Name of the ViewModel type.
DependencyObjectObservableForProperty Creates a observable for a property if available that is based on a DependencyProperty.
DependencyResolverMixins Extension methods associated with the IMutableDependencyResolver interface.
DoubleToStringTypeConverter Double To String Type Converter.
DummySuspensionDriver A suspension driver that does not do anything. Useful potentially for unit testing or for platforms where you don't want to use a Suspension Driver.
EqualityTypeConverter The default converter, simply converts between types that are equal or can be converted (i.e. Button => UIControl).
ExpressionMixins Extension methods associated with the Expression class.
FlexibleCommandBinder Command binder for android controls. Generic command binder platform registrations.
HandlerScheduler HandlerScheduler is a scheduler that schedules items on a running Activity's main thread. This is the moral equivalent of DispatcherScheduler.
IgnoreResourceAttribute Attribute that marks a resource to be ignored.
IndexNormalizer takes a batch of updates in their natural order (i.e. the order they occurred in the client code) and normalizes them to something iOS can consume when performing batch updates to a table or collection view iOS requires that all deletes be specified first with indexes relative to the source data *before* any insertions are applied it then requires insertions be specified next relative to the source data *after* any deletions are applied this code also de-duplicates as necessary. The simplest possible scenario for this is adding and immediately deleting an item. iOS should never even be told about this set of updates because they cancel each other out.
INPCObservableForProperty Generates Observables based on observing INotifyPropertyChanged objects.
IntegerToStringTypeConverter Integer To String Type Converter.
Interaction<TInput, TOutput> Represents an interaction between collaborating application components.
InteractionBinderImplementation Provides methods to bind Interaction<TInput, TOutput>s to handlers.
InteractionBindingMixins This class provides extension methods for the ReactiveUI view binding mechanism.
InteractionContext<TInput, TOutput> Contains contextual information for an interaction.
IReactiveObjectExtensions Extension methods associated with the IReactiveObject interface.
IROObservableForProperty Generates Observables based on observing Reactive objects.
KVOObservableForProperty This class provides notifications for Cocoa Framework objects based on Key-Value Observing. Unfortunately, this class is a bit Tricky™, because of the caveat mentioned below - there is no way up-front to be able to tell whether a given property on an object is Key-Value Observable, we only have to hope for the best :-/.
LayoutViewHost A class that implements the Android ViewHolder pattern. Use it along with GetViewHost.
LongToStringTypeConverter Integer To String Type Converter.
MessageBus

MessageBus represents an object that can act as a "Message Bus", a simple way for ViewModels and other objects to communicate with each other in a loosely coupled way.

Specifying which messages go where is done via a combination of the Type of the message as well as an additional "Contract" parameter; this is a unique string used to distinguish between messages of the same Type, and is arbitrarily set by the client.

NSRunloopScheduler Provides a scheduler which will use the Cocoa main loop to schedule work on. This is the Cocoa equivalent of DispatcherScheduler.
NullableByteToStringTypeConverter Short To String Type Converter.
NullableDecimalToStringTypeConverter Decimal To String Type Converter.
NullableDoubleToStringTypeConverter Double To String Type Converter.
NullableIntegerToStringTypeConverter Integer To String Type Converter.
NullableLongToStringTypeConverter Integer To String Type Converter.
NullableShortToStringTypeConverter Short To String Type Converter.
NullableSingleToStringTypeConverter Single To String Type Converter.
OAPHCreationHelperMixin A collection of helpers to aid working with observable properties.
ObservableAsPropertyHelper<T> ObservableAsPropertyHelper is a class to help ViewModels implement "output properties", that is, a property that is backed by an Observable. The property will be read-only, but will still fire change notifications. This class can be created directly, but is more often created via the OAPHCreationHelperMixin extension methods.
ObservableForPropertyBase ObservableForPropertyBase represents an object that knows how to create notifications for a given type of object. Implement this if you are porting RxUI to a new UI toolkit, or generally want to enable WhenAny for another type of object that can be observed in a unique way.
ObservableFuncMixins Observable Func Mixins.
ObservableLoggingMixin Extension methods to assist with Logging.
ObservableMixins Extension methods associated with observables.
ObservedChange<TSender, TValue> A data-only version of IObservedChange.
ObservedChangedMixin A collection of helpers for IObservedChange<TSender, TValue>.
OrderedComparer Convenience class providing a starting point for chaining comparers for anonymous types.
OrderedComparer<T> Convenience class providing a starting point for chaining comparers.
PlatformOperations Returns the current orientation of the device on tizen. Returns the current orientation of the device on Android. Returns the current orientation of the device on Windows. Returns the current orientation of the device on iOS.
PlatformRegistrationManager Class that represents the platform registration for ReactiveUI.
PlatformRegistrations UIKit platform registrations. .NET Framework platform registrations. Tizen platform registrations. A mock platform registration for the .Net Standard. It will fire an exception since we need a target platform to run. Platform registrations for a .NET Core application. Mac platform registrations. Android platform registrations.
POCOObservableForProperty This class is the final fallback for WhenAny, and will simply immediately return the value of the type at the time it was created. It will also warn the user that this is probably not what they want to do.
PropertyBinderImplementation Provides methods to bind properties to observables.
PropertyBindingMixins This class provides extension methods for the ReactiveUI view binding mechanism.
ReactiveActivity This is an Activity that is both an Activity and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveActivity<TViewModel> This is an Activity that is both an Activity and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionReusableView This is a UICollectionReusableView that is both an UICollectionReusableView and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionReusableView<TViewModel> This is a UICollectionReusableView that is both an UICollectionReusableView and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionView This is a UICollectionView that is both an UICollectionView and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionView<TViewModel> This is a UICollectionView that is both an UICollectionView and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionViewCell This is a UICollectionViewCell that is both an UICollectionViewCell and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionViewCell<TViewModel> This is a UICollectionViewCell that is both an UICollectionViewCell and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionViewController This is a UICollectionViewController that is both an UICollectionViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionViewController<TViewModel> This is a UICollectionViewController that is both an UICollectionViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveCollectionViewSource<TSource> ReactiveCollectionViewSource is a Collection View Source that is connected to a Read Only List that automatically updates the View based on the contents of the list. The collection changes are buffered and View items are animated in and out as items are added.
ReactiveCollectionViewSourceExtensions Extension methods for ReactiveCollectionViewSource<TSource>.
ReactiveCommand Encapsulates a user action behind a reactive interface.
ReactiveCommand<TParam, TResult> Encapsulates a user interaction behind a reactive interface.
ReactiveCommandBase<TParam, TResult> A base class for generic reactive commands.
ReactiveCommandMixins Extension methods associated with the ReactiveCommand class.
ReactiveControl This is a UIControl that is both and UIControl and has a ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveControl<TViewModel> This is a UIControl that is both and UIControl and has a ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveFragment This is a Fragment that is both an Activity and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveFragment<TViewModel> This is a Fragment that is both an Activity and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveImageView This is an ImageView that is both and ImageView and has a ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveImageView<TViewModel> This is an ImageView that is both and ImageView and has a ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveNavigationController This is a UINavigationController that is both an UINavigationController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveNavigationController<TViewModel> This is a UINavigationController that is both an UINavigationController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveNotifyPropertyChangedMixin Extension methods associated with the Observable Changes and the Reactive Notify Property Changed based events.
ReactiveObject ReactiveObject is the base object for ViewModel classes, and it implements INotifyPropertyChanged. In addition, ReactiveObject provides Changing and Changed Observables to monitor object changes.
ReactivePage<TViewModel> A Page that is reactive.
ReactivePageViewController This is a UIPageViewController that is both an UIPageViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactivePageViewController<TViewModel> This is a UIPageViewController that is both an UIPageViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactivePreferenceActivity This is an Activity that is both an Activity and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactivePreferenceActivity<TViewModel> This is an Activity that is both an Activity and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactivePreferenceFragment This is a PreferenceFragment that is both an Activity and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactivePreferenceFragment<TViewModel> This is a PreferenceFragment that is both an Activity and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactivePropertyChangedEventArgs<TSender> Event arguments for when a property has changed. Expands on the PropertyChangedEventArgs to add the Sender.
ReactivePropertyChangingEventArgs<TSender> Event arguments for when a property is changing.
ReactiveSplitViewController This is a View that is both a NSSplitViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveSplitViewController<TViewModel> This is a View that is both a NSSplitViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTabBarController This is a TabBar that is both an TabBar and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTabBarController<TViewModel> This is a TabBar that is both an TabBar and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTableView This is a TableView that is both an TableView and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTableView<TViewModel> This is a TableView that is both an TableView and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTableViewCell This is a UITableViewCell that is both an UITableViewCell and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTableViewCell<TViewModel> This is a UITableViewCell that is both an UITableViewCell and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTableViewController This is a NSTableViewController that is both an NSTableViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTableViewController<TViewModel> This is a NSTableViewController that is both an NSTableViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveTableViewSource<TSource> ReactiveTableViewSource is a Table View Source that is connected to a List that automatically updates the View based on the contents of the list. The collection changes are buffered and View items are animated in and out as items are added.
ReactiveTableViewSourceExtensions Extension methods for ReactiveTableViewSource<TSource>.
ReactiveUserControl<TViewModel> A UserControl that is reactive.
ReactiveView This is a View that is both a NSView and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveView<TViewModel> This is a View that is both a NSView and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveViewController This is a View that is both a NSViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveViewController<TViewModel> This is a View that is both a NSViewController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
ReactiveViewHost<TViewModel> A class that implements the Android ViewHolder pattern with a ViewModel. Use it along with GetViewHost.
ReactiveWindow<TViewModel> A Window that is reactive.
ReactiveWindowController This is a NSWindowController that is both a NSWindowController and has ReactiveObject powers (i.e. you can call RaiseAndSetIfChanged).
Reflection Helper class for handling Reflection amd Expression tree related items.
Registrations The main registration for common classes for the Splat dependency injection. We have code that runs reflection through the different ReactiveUI classes searching for IWantsToRegisterStuff and will register all our required DI interfaces. The registered items in this classes are common for all Platforms. To get these registrations after the main ReactiveUI Initialization use the DependencyResolverMixins.InitializeReactiveUI() extension method.
RoutableViewModelMixin Extension methods associated with the IRoutableViewModel interface.
RoutedViewHost This control hosts the View associated with a Router, and will display the View and wire up the ViewModel whenever a new ViewModel is navigated to. Put this control as the only control in your Window. RoutedViewHost is a ReactiveNavigationController that monitors its RoutingState and keeps the navigation stack in line with it.
RoutingState RoutingState manages the ViewModel Stack and allows ViewModels to navigate to other ViewModels.
RoutingStateMixins Extension methods associated with the RoutingState class.
RxApp The main registration point for common class instances throughout a ReactiveUI application.
ScheduledSubject<T> A subject which dispatches all its events on the specified Scheduler.
SharedPreferencesExtensions Extension methods for shared preferences.
ShortToStringTypeConverter Short To String Type Converter.
SingleInstanceViewAttribute Indicates that this View should be constructed _once_ and then used every time its ViewModel View is resolved. Obviously, this is not supported on Views that may be reused multiple times in the Visual Tree.
SingleToStringTypeConverter Single To String Type Converter.
SingleWindowDispatcherScheduler This scheduler forces all dispatching to go to the first window of the CoreApplication.Views enumeration. This makes the intended behavior of only supporting single window apps on UWP explicit. If your app creates multiple windows, you should explicitly supply a scheduler which marshals back to that window's CoreDispatcher.
StringConverter Calls ToString on types. In WPF, ComponentTypeConverter should win instead of this, since It's Better™.
SuspensionHostExtensions Extension methods associated with the ISuspensionHost interface.
TableSectionHeader A header or footer of a table section.
TableSectionInformation<TSource, TCell> Class used to extract a common API between UIKit.UICollectionView and UIKit.UICollectionViewCell.
TableSectionInformation<TSource> Class used to extract a common API between UIKit.UITableView and UIKit.UITableViewCell.
TargetActionCommandBinder TargetActionCommandBinder is an implementation of command binding that understands Cocoa's Target / Action Framework. Many controls in Cocoa that are effectively command sources (i.e. Buttons, Menus, etc), participate in this framework.
TransitioningContentControl A ContentControl that animates the transition when its content is changed. A control with a single transition.
UIControlCommandExtensions Extension methods for binding ICommand to a UIControl.
UIKitCommandBinders UI Kit command binder platform registrations.
UIKitObservableForProperty UIKitObservableForProperty is an object that knows how to create notifications for a given type of object. Implement this if you are porting RxUI to a new UI toolkit, or generally want to enable WhenAny for another type of object that can be observed in a unique way.
UnhandledErrorException Indicates that an object implementing IHandleObservableErrors has caused an error and nothing is attached to ThrownExceptions to handle that error.
UnhandledInteractionException<TInput, TOutput> Indicates that an interaction has gone unhandled.
Update An update for the index normalizer.
UsbManagerExtensions Extension methods for the usb manager.
ViewCommandExtensions Extension methods for view commands.
ViewContractAttribute Allows an additional string to make view resolution more specific than just a type. When applied to your IViewFor<T> -derived View, you can select between different Views for a single ViewModel instance.
ViewForMixins A set of extension methods to help wire up View and ViewModel activation.
ViewLocator Helper class which will get the currently registered IViewLocator interface inside the Splat dependency injection container.
ViewLocatorNotFoundException An exception that is thrown if we are unable to find the View Locator.
ViewMixins Default methods for ILayoutViewHost.
ViewModelActivator

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.

ViewModelViewHost A control which will use Splat dependency injection to determine the View to show. It uses. This content control will automatically load the View associated with the ViewModel property and display it. This control is very useful inside a DataTemplate to display the View associated with a ViewModel.
WaitForDispatcherScheduler This scheduler attempts to deal with some of the brain-dead defaults on certain Microsoft platforms that make it difficult to access the Dispatcher during startup. This class wraps a scheduler and if it isn't available yet, it simply runs the scheduled item immediately.
WhenAnyMixin Extension methods associated with the WhenAny/WhenAnyValue classes.
WhenAnyObservableMixin A mixin which provides support for subscribing to observable properties.
WinRTAppDataDriver Loads and saves state to persistent storage.
WireUpResourceAttribute Attribute that marks a resource for wiring.

Interface Types

Interface Summary
IActivatableView Use this Interface when you want to mark a control as receiving View Activation when it doesn't have a backing ViewModel.
IActivatableViewModel Implementing this interface on a ViewModel indicates that the ViewModel is interested in Activation events. Instantiate the Activator, then call WhenActivated on your class to register what you want to happen when the View is activated. See the documentation for ViewModelActivator to read more about Activation.
IActivationForViewFetcher Implement this interface to override how ReactiveUI determines when a View is activated or deactivated. This is usually only used when porting ReactiveUI to a new UI framework.
IBindingTypeConverter This interface is the extensible implementation of IValueConverters for Bind and OneWayBind. Implement this to teach Bind and OneWayBind how to convert between types.
ICanActivate This Interface is used by the framework to explicitly provide activation events. Usually you can ignore this unless you are porting RxUI to a new UI Toolkit.
IComparerBuilder<T> Convenience interface for providing a starting point for chaining comparers.
ICreatesCommandBinding Classes that implement this interface and registered inside Splat will be used to potentially provide binding to a ICommand in the ViewModel to a Control in the View.
ICreatesObservableForProperty ICreatesObservableForProperty represents an object that knows how to create notifications for a given type of object. Implement this if you are porting RxUI to a new UI toolkit, or generally want to enable WhenAny for another type of object that can be observed in a unique way.
IHandleObservableErrors

This interface is implemented by RxUI objects which are given IObservables as input - when the input IObservables OnError, instead of disabling the RxUI object, we catch the IObservable and pipe it into this property.

Normally this IObservable is implemented with a ScheduledSubject whose default Observer is RxApp.DefaultExceptionHandler - this means, that if you aren't listening to ThrownExceptions and one appears, the exception will appear on the UI thread and crash the application.

IInteractionBinderImplementation Implementation logic for Interaction<TInput, TOutput> binding.
ILayoutViewHost Interface that defines a layout view host.
IMessageBus

IMessageBus represents an object that can act as a "Message Bus", a simple way for ViewModels and other objects to communicate with each other in a loosely coupled way.

Specifying which messages go where is done via a combination of the Type of the message as well as an additional "Contract" parameter; this is a unique string used to distinguish between messages of the same Type, and is arbitrarily set by the client.

IObservedChange<TSender, TValue> IObservedChange is a generic interface that is returned from WhenAny() Note that it is used for both Changing (i.e.'before change') and Changed Observables.
IPlatformOperations Additional details implemented by the different ReactiveUI platform projects.
IPropertyBinderImplementation This interface represents an object that is capable of providing binding implementations.
IPropertyBindingHook Implement this as a way to intercept bindings at the time that they are created and execute an additional action (or to cancel the binding).
IReactiveBinding<TView, TValue> This interface represents the result of a Bind/OneWayBind and gives information about the binding. When this object is disposed, it will destroy the binding it is describing (i.e. most of the time you won't actually care about this object, just that it is disposable).
IReactiveCommand Encapsulates a user action behind a reactive interface. This is for interop inside for the command binding. Not meant for external use due to the fact it doesn't implement ICommand to force the user to favor the Reactive style command execution.
IReactiveNotifyPropertyChanged<TSender> IReactiveNotifyPropertyChanged represents an extended version of INotifyPropertyChanged that also exposes typed Observables.
IReactiveObject A reactive object is a interface for ViewModels which will expose logging, and notify when properties are either changing or changed. The primary use of this interface is to allow external classes such as the ObservableAsPropertyHelper to trigger these events inside the ViewModel.
IReactivePropertyChangedEventArgs<TSender> IReactivePropertyChangedEventArgs is a generic interface that is used to wrap the NotifyPropertyChangedEventArgs and gives information about changed properties. It includes also the sender of the notification. Note that it is used for both Changing (i.e.'before change') and Changed Observables.
IRoutableViewModel Implement this interface for ViewModels that can be navigated to.
IScreen IScreen represents any object that is hosting its own routing - usually this object is your AppViewModel or MainWindow object.
ISetMethodBindingConverter This converter will allow users to change the way the set functionality is performed in ReactiveUI property binding.
ISuspensionDriver ISuspensionDriver represents a class that can load/save state to persistent storage. Most platforms have a basic implementation of this class, but you probably want to write your own.
ISuspensionHost ISuspensionHost represents a standardized version of the events that the host operating system publishes. Subscribe to these events in order to handle app suspend / resume.
IViewFor This base class is mostly used by the Framework. Implement IViewFor<T> instead.
IViewFor<T> Implement this interface on your Views to support Routing and Binding.
IViewLocator Implement this to override how RoutedViewHost and ViewModelViewHost map ViewModels to Views.

Enum Types

Enum Summary
BindingDirection The type of binding that the ReactiveBinding represents.
BooleanToVisibilityHint Enum that hints at the visibility of a ui element.
RegistrationNamespace Platforms or other registration namespaces for the dependency resolver to consider when initializing.
TriggerUpdate Trigger Update.
UpdateType The type of update triggered.

Namespaces