Is it possible to use a member instead of let for an F# Event?

Viewed 91

In this code, EventL uses a let binding and EventM (is an attempt to) use a member:

type MyType() =
   let EventL = new Event<_>()
   member this.EventM = new Event<_>()

   member this.AddHandlers() =
      Event.add (fun string1 -> printfn "EventL: %s" string1) EventL.Publish
      Event.add (fun string1 -> printfn "EventM: %s" string1) this.EventM.Publish

   member this.Trigger(message) =
      EventL.Trigger(message)
      this.EventM.Trigger(message)

let myMyType = MyType()
myMyType.AddHandlers()
myMyType.Trigger("Event arg.")

When run, this outputs only EventL: Event arg. while EventM's handler is not called.

Am I making a silly mistake or missing some piece of logic regarding members?

1 Answers
Related