我想在Visual Basic 2010中使用MIDI.NET,而它是用C#编写的。所以我得到了使用在线转换器转换它的提示,因为这些语言是相互替代的。 的一个问题,我已经是这行C#VB.net转换错误
inputDevice.NoteOn += new InputDevice.NoteOnHandler(NoteOn);
转换到VB.NET它看起来像这样
InputDevice.NoteOn += New InputDevice.NoteOnHandler(NoteOn)
这给了我2个错误。
'公共事件NoteOn(msg As NoteOnMessage)'是一个事件,不能直接调用。使用'RaiseEvent'语句来引发一个事件。 C:\ Users \ Den Houting \ AppData \ Local \ Temporary Projects \ MIDI \ Form1.vb 14 9 MIDI
错误3委托'Midi.InputDevice.NoteOnHandler'需要'AddressOf'表达式或lambda表达式作为唯一的对其构造函数的参数。 C:\用户\书房Houting \应用程序数据\本地\临时项目\ MIDI \ Form1.vb的14 82 MIDI
当试图这样做RaiseEvent NoteOn
它告诉我NoteOn不是一个事件。
谢谢。
这是正确的答案,但在C#中,运算符+ =适用于多播委托。你可以在vb.net上发布一个多播委托的例子来得到一个完全符合C#特性的答案吗?我可以自己做,但我不想重复一个正确的答案。 – jlvaquero
@jlvaquero去找吧,因为我没有时间快速完成任务,无法从头顶开始。 – Szymon
谢谢!这有帮助! –