Compartir a través de


Event.pairwise<'Del,'T> (Función de F#)

Devuelve un nuevo evento que se desencadena la segunda vez y las veces subsiguientes que se desencadena el evento de entrada.El enésimo desencadenamiento del evento de entrada pasa como un par los argumentos del enésimo desencadenamiento y del enésimo desencadenamiento -1.El argumento que se pasa al enésimo desencadenamiento -1 se mantiene en estado interno oculto hasta que tiene lugar el enésimo desencadenamiento.

Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Control.Event

Ensamblado: FSharp.Core (en FSharp.Core.dll)

// Signature:
Event.pairwise : IEvent<'Del,'T> -> IEvent<'T * 'T> (requires delegate)

// Usage:
Event.pairwise sourceEvent

Parámetros

  • sourceEvent
    Tipo: IEvent<'Del,'T>

    Evento de entrada.

Valor devuelto

Evento que se desencadena en los pares de valores consecutivos pasados desde el evento de origen.

Comentarios

Esta función se denomina Pairwise en los ensamblados compilados.Si obtiene acceso a la función desde un lenguaje distinto de F# o mediante reflexión, use este nombre.

Ejemplo

En el siguiente ejemplo de código se muestra cómo utilizar la función Event.pairwise.En este ejemplo, la función hace que os datos de más de un evento MouseMove estén disponibles; dichos datos se usan para dibujar una línea entre las posiciones consecutivas del mouse.

open System.Windows.Forms
open System.Drawing

let form = new Form(Text = "F# Windows Form",
                    Visible = true,
                    TopMost = true)

let graphics = BufferedGraphicsManager.Current.Allocate(form.CreateGraphics(), 
                                new Rectangle( 0, 0, form.Width, form.Height ))
let whitePen = new Pen(Color.White)

form.MouseClick
    |> Event.pairwise
    |> Event.add ( fun (evArgs1, evArgs2) ->
        graphics.Graphics.DrawLine(whitePen, evArgs1.X, evArgs1.Y, evArgs2.X, evArgs2.Y)
        form.Refresh())

form.Paint
    |> Event.add(fun evArgs -> graphics.Render(evArgs.Graphics))

Plataformas

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Información de versiones

Versiones de la biblioteca básica de F#

Se admite en: 2.0, 4.0, portables

Vea también

Referencia

Control.Event (Módulo de F#)

Microsoft.FSharp.Control (Espacio de nombres de F#)