Skip to content

},System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Func{--1,--2,--3})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Func{--1,--2,--3,--4})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Func{--1,--2,--3,--4,--5})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Linq.Expressions.Expression{System.Func{--0,--5}},System.Func{--1,--2,--3,--4,--5,--6})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Linq.Expressions.Expression{System.Func{--0,--5}},System.Linq.Expressions.Expression{System.Func{--0,--6}},System.Func{--1,--2,--3,--4,--5,--6,--7})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Linq.Expressions.Expression{System.Func{--0,--5}},System.Linq.Expressions.Expression{System.Func{--0,--6}},System.Linq.Expressions.Expression{System.Func{--0,--7}},System.Func{--1,--2,--3,--4,--5,--6,--7,--8})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Linq.Expressions.Expression{System.Func{--0,--5}},System.Linq.Expressions.Expression{System.Func{--0,--6}},System.Linq.Expressions.Expression{System.Func{--0,--7}},System.Linq.Expressions.Expression{System.Func{--0,--8}},System.Func{--1,--2,--3,--4,--5,--6,--7,--8,--9})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Linq.Expressions.Expression{System.Func{--0,--5}},System.Linq.Expressions.Expression{System.Func{--0,--6}},System.Linq.Expressions.Expression{System.Func{--0,--7}},System.Linq.Expressions.Expression{System.Func{--0,--8}},System.Linq.Expressions.Expression{System.Func{--0,--9}},System.Func{--1,--2,--3,--4,--5,--6,--7,--8,--9,--10})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Linq.Expressions.Expression{System.Func{--0,--5}},System.Linq.Expressions.Expression{System.Func{--0,--6}},System.Linq.Expressions.Expression{System.Func{--0,--7}},System.Linq.Expressions.Expression{System.Func{--0,--8}},System.Linq.Expressions.Expression{System.Func{--0,--9}},System.Linq.Expressions.Expression{System.Func{--0,--10}},System.Func{--1,--2,--3,--4,--5,--6,--7,--8,--9,--10,--11})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Linq.Expressions.Expression{System.Func{--0,--5}},System.Linq.Expressions.Expression{System.Func{--0,--6}},System.Linq.Expressions.Expression{System.Func{--0,--7}},System.Linq.Expressions.Expression{System.Func{--0,--8}},System.Linq.Expressions.Expression{System.Func{--0,--9}},System.Linq.Expressions.Expression{System.Func{--0,--10}},System.Linq.Expressions.Expression{System.Func{--0,--11}},System.Func{--1,--2,--3,--4,--5,--6,--7,--8,--9,--10,--11,--12})} },System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{--0,--3}},System.Linq.Expressions.Expression{System.Func{--0,--4}},System.Linq.Expressions.Expression{System.Func{--0,--5}},System.Linq.Expressions.Expression{System.Func{--0,--6}},System.Linq.Expressions.Expression{System.Func{--0,--7}},System.Linq.Expressions.Expression{System.Func{--0,--8}},System.Linq.Expressions.Expression{System.Func{--0,--9}},System.Linq.Expressions.Expression{System.Func{--0,--10}},System.Linq.Expressions.Expression{System.Func{--0,--11}},System.Linq.Expressions.Expression{System.Func{--0,--12}},System.Func{--1,--2,--3,--4,--5,--6,--7,--8,--9,--10,--11,--12,--13})}

NotifyPropertiesChangeExtensions.WhenChanged(TObj, Expression>, Expression>, Func) method

Defined in

Type: NotifyPropertiesChangeExtensions Namespace: ReactiveMarbles.PropertyChanged Assembly: ReactiveMarbles.PropertyChanged.dll

Applies to

netstandard2.0, net462

Overloads

  • 1. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Func<TTempReturn1, TTempReturn2, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 2. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Func<TTempReturn1, TTempReturn2, TTempReturn3, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 3. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 4. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 5. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 6. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 7. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 8. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Expression<Func<TObj, TTempReturn9>> propertyExpression9, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 9. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Expression<Func<TObj, TTempReturn9>> propertyExpression9, Expression<Func<TObj, TTempReturn10>> propertyExpression10, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 10. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TTempReturn11, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Expression<Func<TObj, TTempReturn9>> propertyExpression9, Expression<Func<TObj, TTempReturn10>> propertyExpression10, Expression<Func<TObj, TTempReturn11>> propertyExpression11, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TTempReturn11, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged
  • 11. public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TTempReturn11, TTempReturn12, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Expression<Func<TObj, TTempReturn9>> propertyExpression9, Expression<Func<TObj, TTempReturn10>> propertyExpression10, Expression<Func<TObj, TTempReturn11>> propertyExpression11, Expression<Func<TObj, TTempReturn12>> propertyExpression12, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TTempReturn11, TTempReturn12, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

1. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Func<TTempReturn1, TTempReturn2, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

2. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Func<TTempReturn1, TTempReturn2, TTempReturn3, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

3. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

4. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TTempReturn5The return type of the value5.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
propertyExpression5Expression>A expression to the value5.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

5. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TTempReturn5The return type of the value5.
TTempReturn6The return type of the value6.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
propertyExpression5Expression>A expression to the value5.
propertyExpression6Expression>A expression to the value6.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

6. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TTempReturn5The return type of the value5.
TTempReturn6The return type of the value6.
TTempReturn7The return type of the value7.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
propertyExpression5Expression>A expression to the value5.
propertyExpression6Expression>A expression to the value6.
propertyExpression7Expression>A expression to the value7.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

7. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TTempReturn5The return type of the value5.
TTempReturn6The return type of the value6.
TTempReturn7The return type of the value7.
TTempReturn8The return type of the value8.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
propertyExpression5Expression>A expression to the value5.
propertyExpression6Expression>A expression to the value6.
propertyExpression7Expression>A expression to the value7.
propertyExpression8Expression>A expression to the value8.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

8. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Expression<Func<TObj, TTempReturn9>> propertyExpression9, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TTempReturn5The return type of the value5.
TTempReturn6The return type of the value6.
TTempReturn7The return type of the value7.
TTempReturn8The return type of the value8.
TTempReturn9The return type of the value9.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
propertyExpression5Expression>A expression to the value5.
propertyExpression6Expression>A expression to the value6.
propertyExpression7Expression>A expression to the value7.
propertyExpression8Expression>A expression to the value8.
propertyExpression9Expression>A expression to the value9.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

9. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Expression<Func<TObj, TTempReturn9>> propertyExpression9, Expression<Func<TObj, TTempReturn10>> propertyExpression10, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TTempReturn5The return type of the value5.
TTempReturn6The return type of the value6.
TTempReturn7The return type of the value7.
TTempReturn8The return type of the value8.
TTempReturn9The return type of the value9.
TTempReturn10The return type of the value10.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
propertyExpression5Expression>A expression to the value5.
propertyExpression6Expression>A expression to the value6.
propertyExpression7Expression>A expression to the value7.
propertyExpression8Expression>A expression to the value8.
propertyExpression9Expression>A expression to the value9.
propertyExpression10Expression>A expression to the value10.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

10. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TTempReturn11, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Expression<Func<TObj, TTempReturn9>> propertyExpression9, Expression<Func<TObj, TTempReturn10>> propertyExpression10, Expression<Func<TObj, TTempReturn11>> propertyExpression11, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TTempReturn11, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TTempReturn5The return type of the value5.
TTempReturn6The return type of the value6.
TTempReturn7The return type of the value7.
TTempReturn8The return type of the value8.
TTempReturn9The return type of the value9.
TTempReturn10The return type of the value10.
TTempReturn11The return type of the value11.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
propertyExpression5Expression>A expression to the value5.
propertyExpression6Expression>A expression to the value6.
propertyExpression7Expression>A expression to the value7.
propertyExpression8Expression>A expression to the value8.
propertyExpression9Expression>A expression to the value9.
propertyExpression10Expression>A expression to the value10.
propertyExpression11Expression>A expression to the value11.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.

11. Overload

public static IObservable<TReturn> WhenChanged<TObj, TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TTempReturn11, TTempReturn12, TReturn>(this TObj objectToMonitor, Expression<Func<TObj, TTempReturn1>> propertyExpression1, Expression<Func<TObj, TTempReturn2>> propertyExpression2, Expression<Func<TObj, TTempReturn3>> propertyExpression3, Expression<Func<TObj, TTempReturn4>> propertyExpression4, Expression<Func<TObj, TTempReturn5>> propertyExpression5, Expression<Func<TObj, TTempReturn6>> propertyExpression6, Expression<Func<TObj, TTempReturn7>> propertyExpression7, Expression<Func<TObj, TTempReturn8>> propertyExpression8, Expression<Func<TObj, TTempReturn9>> propertyExpression9, Expression<Func<TObj, TTempReturn10>> propertyExpression10, Expression<Func<TObj, TTempReturn11>> propertyExpression11, Expression<Func<TObj, TTempReturn12>> propertyExpression12, Func<TTempReturn1, TTempReturn2, TTempReturn3, TTempReturn4, TTempReturn5, TTempReturn6, TTempReturn7, TTempReturn8, TTempReturn9, TTempReturn10, TTempReturn11, TTempReturn12, TReturn> conversionFunc) where TObj : class, INotifyPropertyChanged

Summary: Notifies when the specified property changes.

Type parameters

NameDescription
TObjThe type of initial object.
TTempReturn1The return type of the value1.
TTempReturn2The return type of the value2.
TTempReturn3The return type of the value3.
TTempReturn4The return type of the value4.
TTempReturn5The return type of the value5.
TTempReturn6The return type of the value6.
TTempReturn7The return type of the value7.
TTempReturn8The return type of the value8.
TTempReturn9The return type of the value9.
TTempReturn10The return type of the value10.
TTempReturn11The return type of the value11.
TTempReturn12The return type of the value12.
TReturnThe return value of the observable. Generated from the conversion func.

Parameters

NameTypeDescription
objectToMonitorTObjThe object to monitor.
propertyExpression1Expression>A expression to the value1.
propertyExpression2Expression>A expression to the value2.
propertyExpression3Expression>A expression to the value3.
propertyExpression4Expression>A expression to the value4.
propertyExpression5Expression>A expression to the value5.
propertyExpression6Expression>A expression to the value6.
propertyExpression7Expression>A expression to the value7.
propertyExpression8Expression>A expression to the value8.
propertyExpression9Expression>A expression to the value9.
propertyExpression10Expression>A expression to the value10.
propertyExpression11Expression>A expression to the value11.
propertyExpression12Expression>A expression to the value12.
conversionFuncFuncParameter which converts into the end value.

Returns: IObservable -- An observable that signals when the properties specified in the expressions have changed.

Exceptions

TypeCondition
System.ArgumentNullExceptionEither the property expression or the object to monitor is null.
System.ArgumentExceptionIf there is an issue with the property expression.