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

Converts a .NET event to a queryable observable sequence.

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

public static IQbservable<TEventArgs> FromEvent<TDelegate, TEventArgs>(
	this IQbservableProvider provider,
	Expression<Func<Action<TEventArgs>, TDelegate>> conversion,
	Expression<Action<TDelegate>> addHandler,
	Expression<Action<TDelegate>> removeHandler

Type Parameters


The type of delegate.


The type of event.


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

Return Value

Type: System.Reactive.Linq.IQbservable<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.