Udostępnij za pośrednictwem


Event.partition < t,'Del > Funkcja (F#)

Zwraca nowe zdarzenie, które wykrywa zdarzenie oryginalny i wyzwala pierwszego zdarzenia wynikowego, jeśli zwrócona stosowania predykat argumenty zdarzeń truei drugie zdarzenie, jeśli zwrócona on false.

Ścieżka obszaru nazw/modułu: Microsoft.FSharp.Control.Event

Zgromadzenie: FSharp.Core (w FSharp.Core.dll)

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

// Usage:
Event.partition predicate sourceEvent

Parametry

  • predicate
    Type: 'T ->bool

    Funkcja określenia wyjściowy, który wyzwolić zdarzenie.

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

    Zdarzenie wejściowe.

Wartość zwracana

Krotka zdarzeń.Pierwszym jest wyzwalane, gdy wynikiem predykat true , a drugi, gdy wynikiem predykat false.

Uwagi

Ta funkcja o nazwie Partition w skompilowane zestawy.Jeżeli języka, niż F# lub przez odbicie, uzyskują dostęp do funkcji, należy użyć tej nazwy.

Przykład

Poniższy kod pokazuje, jak używać Event.partition funkcji podzielić zdarzenia na dwa zdarzenia, każdy z własną zdarzenia kod obsługi.

open System.Windows.Forms
open System.Drawing

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

let (event1, event2) =
    form.MouseMove 
    |> Event.partition (fun evArgs -> evArgs.X > 100)

event1 |> Event.add ( fun evArgs ->
    form.BackColor <- System.Drawing.Color.FromArgb(
        evArgs.X, evArgs.Y, evArgs.X ^^^ evArgs.Y))
event2 |> Event.add ( fun evArgs ->
    form.BackColor <- System.Drawing.Color.FromArgb(
        evArgs.Y, evArgs.X, evArgs.Y ^^^ evArgs.X))

Platformy

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

Informacje o wersji

F# Core wersji biblioteki

Obsługiwane: 2.0, 4.0, przenośne

Zobacz też

Informacje

Moduł Control.Event (F#)

Obszar nazw Microsoft.FSharp.Control (F#)