Я следую методу, предложенному доном Симе над here, чтобы поднять событие и обработать его в графическом интерфейсе. я создал свое событие следующим образомКак я могу обрабатывать события F # в VB.Net?
let progressReport = new Event<int>()
и выставил его следующим образом
[<CLIEvent>]
member this.ReportProgress = progressReport.Publish
В моем коде VB.NET, я могу видеть это событие, и я могу даже ответить на него. Однако я могу реагировать на него, если я игнорирую параметр int. Мой код, который работает в
Private Sub test() Handles calcAgent.ReportProgress
prog.Value += 1
End Sub
Если я пытаюсь изменить его
Private Sub test(i As int) Handles calcAgent.ReportProgress
prog.Value += 1
End Sub
он не будет компилировать и дает основание «„тест“метод не может справиться с„ReportProgress“, потому что у них нет совместимая подпись ".
При наведении на 'calcAgent.ReportProgress', какой тип это говорит? –
Event.calculationAgent.ReportProgress Как Microsoft.FSharp.Control.FSharpHandler (Of Integer) –