在vb中从c#转换代码(复杂引发事件)

本文关键字:复杂 事件 代码 vb 中从 转换 | 更新日期: 2023-09-27 18:00:06

我有一段代码,我无法将其从c#转换为vb:

  // subscribe for errors that occur when applying changes to the client
((SqlSyncProvider)syncOrchestrator.LocalProvider).ApplyChangeFailed += new EventHandler<DbApplyChangeFailedEventArgs>(Program_ApplyChangeFailed);

它一定是这样的东西:

DirectCast(syncOrchestrator.LocalProvider, SqlSyncProvider).ApplyChangeFailed += New EventHandler(Of DbApplyChangeFailedEventArgs)(AddressOf Program_ApplyChangeFailed)

我收到一个错误,上面写着:

"Public Event ApplyChangeFailed(sender As Object,e As Microsoft.Synchronization.Data.DbApplyChange FailedEventArgs)"是一个事件,不能直接调用。使用"RaiseEvent"语句引发事件

我甚至不知道该怎么办!对我来说太复杂了:(

有人能帮我吗?

在vb中从c#转换代码(复杂引发事件)

我不知道VB是如何处理事件处理程序的,但从msdn的文章来看:

AddHandler DirectCast(syncOrchestrator.LocalProvider, SqlSyncProvider).ApplyChangeFailed, AddressOf New EventHandler(Of DbApplyChangeFailedEventArgs)(AddressOf Program_ApplyChangeFailed)