Share via

Observable.Window<TSource, TWindowOpening, TWindowClosing> Method (IObservable<TSource>, IObservable<TWindowOpening>, Func<TWindowOpening, IObservable<TWindowClosing>>)

Projects each element of an observable sequence into zero or more windows.

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


<ExtensionAttribute> _
Public Shared Function Window(Of TSource, TWindowOpening, TWindowClosing) ( _
    source As IObservable(Of TSource), _
    windowOpenings As IObservable(Of TWindowOpening), _
    windowClosingSelector As Func(Of TWindowOpening, IObservable(Of TWindowClosing)) _
) As IObservable(Of IObservable(Of TSource))
Dim source As IObservable(Of TSource)
Dim windowOpenings As IObservable(Of TWindowOpening)
Dim windowClosingSelector As Func(Of TWindowOpening, IObservable(Of TWindowClosing))
Dim returnValue As IObservable(Of IObservable(Of TSource))

returnValue = source.Window(windowOpenings, _
public static IObservable<IObservable<TSource>> Window<TSource, TWindowOpening, TWindowClosing>(
    this IObservable<TSource> source,
    IObservable<TWindowOpening> windowOpenings,
    Func<TWindowOpening, IObservable<TWindowClosing>> windowClosingSelector
generic<typename TSource, typename TWindowOpening, typename TWindowClosing>
static IObservable<IObservable<TSource>^>^ Window(
    IObservable<TSource>^ source, 
    IObservable<TWindowOpening>^ windowOpenings, 
    Func<TWindowOpening, IObservable<TWindowClosing>^>^ windowClosingSelector
static member Window : 
        source:IObservable<'TSource> * 
        windowOpenings:IObservable<'TWindowOpening> * 
        windowClosingSelector:Func<'TWindowOpening, IObservable<'TWindowClosing>> -> IObservable<IObservable<'TSource>> 
JScript does not support generic types and methods.

Type Parameters

  • TSource
    The type of source.
  • TWindowOpening
    The type of window opening.
  • TWindowClosing
    The type of window closing.


  • windowOpenings
    Type: System.IObservable<TWindowOpening>
    The observable sequence whose elements denote the creation of new windows.
  • windowClosingSelector
    Type: System.Func<TWindowOpening, IObservable<TWindowClosing>>
    A function invoked to define the closing of each produced window.

Return Value

Type: System.IObservable<IObservable<TSource>>
An observable sequence of windows.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IObservable<TSource>. When you use instance method syntax to call this method, omit the first parameter. For more information, see or .

See Also


Observable Class

Window Overload

System.Reactive.Linq Namespace