Я не уверен на 100% в том, как MVC это делает, но я достиг чего-то похожего.
В моем классе бизнес-уровня
Class BL
public event doneUpdate(o as object, e as eventArgs)
sub method doDBUpdate()
'do your stuff
RaiseEvent doneUpdate(o,e)
end sub
End Class
Class Form
dim withEvents bl as BL
sub g handles bl.doneUpdate(o as object , e as eventargs)
'rebind
end sub
End Class
Теперь в вашем коде для формы вы можете обработать это событие с помощью подпрограммы, которая связывает вашу сетку данных.
Между прочим, я передаю событие контроллеру, с которым работает пользовательский интерфейс, а не напрямую бизнес-уровню.
Надеюсь, это поможет
EDIT:
Привет, Митч
Параметры, передаваемые из события в обработчик, могут быть любыми, хотя Microsoft Coding Convention говорит, что вы должны передать объект, а событие возвращает аргументы.
Если вы объявите свое мероприятие следующим образом
Public Event myEvent(dim updated as Boolean)
и затем иметь ручки sub с такой же подписью
Public Sub handler(byval updated as Boolean) handles myClass.myEvent
тогда вы должны иметь возможность обновлять значение (это только пример)
Единственное, что вы можете проверить, это то, что вы создаете экземпляр своего бизнес-класса, как в случае событий
Dim WithEvents myBL as new BusinessLayer
Если это все еще не работает (если это в WinForms, а не asp.net), вам может понадобиться что-то вроде
AddHandler myBl.myEvent AddressOf handler
Надеюсь, это поможет