Class ReactiveRecord
- Namespace
- ReactiveUI
- Assembly
- ReactiveUI.dll
ReactiveObject is the base object for ViewModel classes, and it implements INotifyPropertyChanged. In addition, ReactiveObject provides Changing and Changed Observables to monitor object changes.
[DataContract]
public record ReactiveRecord : IReactiveNotifyPropertyChanged<IReactiveObject>, IHandleObservableErrors, IReactiveObject, INotifyPropertyChanged, INotifyPropertyChanging, IEnableLogger, IEquatable<ReactiveRecord>
- Inheritance
-
ReactiveRecord
- Implements
- Extension Methods
Constructors
ReactiveRecord()
Initializes a new instance of the ReactiveRecord class.
public ReactiveRecord()
ReactiveRecord(ReactiveRecord)
protected ReactiveRecord(ReactiveRecord original)
Parameters
original
ReactiveRecord
Properties
Changed
Gets an Observable that fires after a property has changed. Note that this should not fire duplicate change notifications if a property is set to the same value multiple times.
[IgnoreDataMember]
[JsonIgnore]
[Browsable(false)]
[Display(Order = -1, AutoGenerateField = false, AutoGenerateFilter = false)]
public IObservable<IReactivePropertyChangedEventArgs<IReactiveObject>> Changed { get; }
Property Value
Changing
Gets an observable that fires before a property is about to be changed. Note that this should not fire duplicate change notifications if a property is set to the same value multiple times.
[IgnoreDataMember]
[JsonIgnore]
[Browsable(false)]
[Display(Order = -1, AutoGenerateField = false, AutoGenerateFilter = false)]
public IObservable<IReactivePropertyChangedEventArgs<IReactiveObject>> Changing { get; }
Property Value
EqualityContract
protected virtual Type EqualityContract { get; }
Property Value
ThrownExceptions
Gets a observable which will fire whenever an exception would normally terminate ReactiveUI internal state.
[IgnoreDataMember]
[JsonIgnore]
[Browsable(false)]
[Display(Order = -1, AutoGenerateField = false, AutoGenerateFilter = false)]
public IObservable<Exception> ThrownExceptions { get; }
Property Value
Methods
AreChangeNotificationsEnabled()
Determines if change notifications are enabled or not.
public bool AreChangeNotificationsEnabled()
Returns
- bool
A value indicating whether change notifications are enabled.
DelayChangeNotifications()
Delays notifications until the return IDisposable is disposed.
public IDisposable DelayChangeNotifications()
Returns
- IDisposable
A disposable which when disposed will send delayed notifications.
Equals(ReactiveRecord?)
public virtual bool Equals(ReactiveRecord? other)
Parameters
other
ReactiveRecord
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
obj
object
Returns
GetHashCode()
public override int GetHashCode()
Returns
PrintMembers(StringBuilder)
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
builder
StringBuilder
Returns
SuppressChangeNotifications()
When this method is called, an object will not fire change notifications (neither traditional nor Observable notifications) until the return value is disposed.
public IDisposable SuppressChangeNotifications()
Returns
- IDisposable
An object that, when disposed, reenables change notifications.
ToString()
public override string ToString()
Returns
Events
PropertyChanged
public event PropertyChangedEventHandler? PropertyChanged
Event Type
PropertyChanging
public event PropertyChangingEventHandler? PropertyChanging
Event Type
Operators
operator ==(ReactiveRecord?, ReactiveRecord?)
public static bool operator ==(ReactiveRecord? left, ReactiveRecord? right)
Parameters
left
ReactiveRecordright
ReactiveRecord
Returns
operator !=(ReactiveRecord?, ReactiveRecord?)
public static bool operator !=(ReactiveRecord? left, ReactiveRecord? right)
Parameters
left
ReactiveRecordright
ReactiveRecord