Qbservable.FromEventPattern<TDelegate, TEventArgs> Method (IQbservableProvider, Expression<Func<EventHandler<TEventArgs>, TDelegate>>, Expression<Action<TDelegate>>, Expression<Action<TDelegate>>)

Converts a .NET event, conforming to the standard .NET event pattern, to an queryable observable sequence with the specified conversion, add handler and remove handler.

Namespace:  System.Reactive.Linq
Assembly:  System.Reactive.Providers (in System.Reactive.Providers.dll)

public static IQbservable<EventPattern<TEventArgs>> FromEventPattern<TDelegate, TEventArgs>(
	this IQbservableProvider provider,
	Expression<Func<EventHandler<TEventArgs>, TDelegate>> conversion,
	Expression<Action<TDelegate>> addHandler,
	Expression<Action<TDelegate>> removeHandler
where TEventArgs : EventArgs

Type Parameters


The type of delegate.


The type for the event.


Type: System.Reactive.Linq.IQbservableProvider
The local Qbservable provider.
Type: System.Linq.Expressions.Expression<Func<EventHandler<TEventArgs>, TDelegate>>
A function used to convert the given event handler to a delegate compatible with the underlying .NET event.
Type: System.Linq.Expressions.Expression<Action<TDelegate>>
The action that attaches the given event handler to the underlying .NET event.
Type: System.Linq.Expressions.Expression<Action<TDelegate>>
The action that detaches the given event handler from the underlying .NET event.

Return Value

Type: System.Reactive.Linq.IQbservable<EventPattern<TEventArgs>>
The queryable observable sequence that contains data representations of invocations of the underlying .NET event.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IQbservableProvider. When you use instance method syntax to call this method, omit the first parameter. For more information, see https://msdn.microsoft.com/en-us/library/bb384936(v=vs.103).aspx or https://msdn.microsoft.com/en-us/library/bb383977(v=vs.103).aspx.