Table of Contents

Class ReactiveComponentBase<T>

Namespace
ReactiveUI.Blazor
Assembly
ReactiveUI.Blazor.dll

A base component for handling property changes and updating the blazer view appropriately.

public class ReactiveComponentBase<T> : ComponentBase, IComponent, IHandleEvent, IHandleAfterRender, IViewFor<T>, IViewFor, IActivatableView, INotifyPropertyChanged, ICanActivate, IDisposable where T : class, INotifyPropertyChanged

Type Parameters

T

The type of view model. Must support INotifyPropertyChanged.

Inheritance
ReactiveComponentBase<T>
Implements
Inherited Members
Extension Methods
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Expression<Func<TSender, T12>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, IObservedChange<TSender, T11>, IObservedChange<TSender, T12>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Expression<Func<TSender, T12>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, IObservedChange<TSender, T11>, IObservedChange<TSender, T12>, TRet>, bool)

Constructors

ReactiveComponentBase()

public ReactiveComponentBase()

Properties

Activated

Gets a observable which is triggered when the ViewModel is activated.

public IObservable<Unit> Activated { get; }

Property Value

IObservable<Unit>

Deactivated

Gets a observable which is triggered when the ViewModel is deactivated.

public IObservable<Unit> Deactivated { get; }

Property Value

IObservable<Unit>

ViewModel

Gets or sets the strongly typed view model. Override this property to integrate with the platform's binding system.

[Parameter]
public T? ViewModel { get; set; }

Property Value

T

Methods

Dispose()

public void Dispose()

Dispose(bool)

Cleans up the managed resources of the object.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

If it is getting called by the Dispose() method rather than a finalizer.

OnAfterRender(bool)

Method invoked after each time the component has rendered interactively and the UI has finished updating (for example, after elements have been added to the browser DOM). Any ElementReference fields will be populated by the time this runs.

This method is not invoked during prerendering or server-side rendering, because those processes are not attached to any live browser DOM and are already complete before the DOM is updated.

[RequiresDynamicCode("OnAfterRender uses methods that require dynamic code generation")]
[RequiresUnreferencedCode("OnAfterRender uses methods that may require unreferenced code")]
protected override void OnAfterRender(bool firstRender)

Parameters

firstRender bool

Set to true if this is the first time OnAfterRender(bool) has been invoked on this component instance; otherwise false.

Remarks

The OnAfterRender(bool) and OnAfterRenderAsync(bool) lifecycle methods are useful for performing interop, or interacting with values received from @ref. Use the firstRender parameter to ensure that initialization work is only performed once.

OnInitialized()

Method invoked when the component is ready to start, having received its initial parameters from its parent in the render tree.

protected override void OnInitialized()

OnPropertyChanged(string?)

Invokes the property changed event.

protected virtual void OnPropertyChanged(string? propertyName = null)

Parameters

propertyName string

The name of the property.

Events

PropertyChanged

public event PropertyChangedEventHandler? PropertyChanged

Event Type

PropertyChangedEventHandler