Skip to content

ReactiveUI.Binding.Observables namespace

Part of the ReactiveUI.Binding package.

TypeKindSummary
ActionDisposableclassA thread-safe IDisposable that invokes a delegate exactly once on disposal. Lightweight replacement for System.Reactive.Disposables.Disposable.Create(Action).
CombineLatestObservableclassFactory methods for creating lightweight CombineLatest observables. Replacement for System.Reactive.Linq.Observable.CombineLatest.
CompositeDisposable2classA fixed two-slot composite disposable. Disposes both contained disposables exactly once. Lightweight replacement for System.Reactive.Disposables.CompositeDisposable(d1, d2).
DistinctUntilChangedByObservableclassDistinctUntilChanged operator that compares consecutive values by a projected key. Replacement for System.Reactive.Linq.Observable.DistinctUntilChanged(source, keySelector).
DistinctUntilChangedObservableclassLightweight DistinctUntilChanged operator that suppresses consecutive duplicate values. Replacement for System.Reactive.Linq.Observable.DistinctUntilChanged.
EmptyDisposableclassA singleton IDisposable that performs no action when disposed. Zero-allocation replacement for System.Reactive.Disposables.Disposable.Empty.
EmptyObservableclassAn observable that completes immediately without emitting any values. Singleton per T. Lightweight replacement for Observable.Empty<T>().
EventObservableclassPlatform-agnostic event-based observable for property observation. Collapses Observable.Create + StartWith + DistinctUntilChanged into a single allocation. Used for WPF DependencyProperty observation via DependencyPropertyDescriptor.AddValueChanged and WinForms {PropertyName}Changed event observation.
MergeObservableclassLightweight Merge operator that combines multiple source observables into one. Replacement for System.Reactive.Linq.Observable.Merge.
NeverObservableclassAn observable that never produces any notification (no value, completion, or error). Singleton per T. Lightweight replacement for Observable.Never<T>().
NotifyPropertyChangedObservableclassSingle fused observable for INotifyPropertyChanged / INotifyPropertyChanging property observation. Each subscription attaches one handler that filters by property name and emits a single prebuilt [IObservedChange](# directly — replacing a FromEvent + Where + Select operator chain with one allocation-light class. Before-change versus after-change is selected per instance, so a single type serves the whole purpose.
PropertyChangingObservableclassFused property observation observable for INotifyPropertyChanging objects. Collapses Observable.Create + StartWith into a single allocation. Does not apply DistinctUntilChanged because the value has not yet changed when PropertyChanging fires.
PropertyObservableclassFused property observation observable for INotifyPropertyChanged objects. Collapses Observable.Create + StartWith + DistinctUntilChanged into a single allocation. Emits the current value on subscription, then emits new values when the property changes.
ReturnObservableclassAn observable that emits a single value and then completes. Lightweight replacement for Observable.Return<T>(value).
RxBindingExtensionsclassLightweight extension methods for IObservable. These are fully-qualified in generated code to avoid conflicts with System.Reactive.Linq extension methods when both namespaces are in scope.
SelectObservableclassLightweight Select (map/projection) operator. Replacement for System.Reactive.Linq.Observable.Select.
SerialDisposableclassA thread-safe serial disposable that disposes the previous inner disposable when a new one is assigned. Lightweight replacement for System.Reactive.Disposables.SerialDisposable.
SkipObservableclassLightweight Skip operator that suppresses the first N elements. Replacement for System.Reactive.Linq.Observable.Skip.
StartWithObservableclassPrepends a single value to a source sequence, emitting it synchronously on subscription before relaying the source. Lightweight replacement for System.Reactive.Linq.Observable.StartWith.
SwitchObservableclassLightweight Switch operator that flattens an IObservable<IObservable<T>> by subscribing to the most recent inner observable and disposing the previous subscription. Replacement for System.Reactive.Linq.Observable.Switch.
WhereObservableclassLightweight Where (filter) operator that forwards only values matching a predicate. Replacement for System.Reactive.Linq.Observable.Where.