Код отрывки клавиш в VB.NET? - PullRequest
       26

Код отрывки клавиш в VB.NET?

1 голос
/ 15 ноября 2010

Есть ли в VB.NET способ реплицировать поведение C # на фрагменты кода в случае захвата событий?

IE в C #:

Btn.Click+= 

и затем двойная вкладка.Создает обработчик для события btn.click.

Ответы [ 2 ]

5 голосов
/ 15 ноября 2010

В C # вы можете только явно связывать события, используя +=. Эквивалент VB равен AddHandler.

Но VB также позволяет неявно связывать события, используя ключевое слово Handles . Обратите внимание, что обработка событий VB более гибкая, чем C #.

Существует несколько способов автоматического создания кода обработчика событий с использованием Handles.

  1. В режиме конструктора просто дважды нажмите кнопку.

  2. Или снова в режиме конструктора:

    а. В окне свойств кнопки нажмите «молнию», чтобы просмотреть события.

    б. Дважды щелкните событие Click.

  3. Или, в представлении кода, вы можете использовать два раскрывающихся списка в верхней части окна

    а. Выберите кнопку слева.

    б. Выберите событие Click в правом.

EDIT : в VB.Net 2010 вы можете обрабатывать события с помощью оператора lambdas . Пример:

AddHandler b.Click, _
  Sub(sender As Object, e As EventArgs)
    MsgBox("Button Clicked")
    'insert more complex logic here
   End Sub

Хорошо, возможно, вы знаете об неявной обработке событий и анонимных методов, и вы все еще решили, что вам действительно нужно постоянно подключать явные локальные методы из AddHandler. Может быть, есть сторонняя надстройка, которая поддерживает его. Может быть, CodeRush , я не знаю (если кто-нибудь знает, пожалуйста, оставьте комментарий). Или вы можете даже создать свою собственную надстройку.

3 голосов
/ 15 ноября 2010

Как ни странно, команда VB.NET не реализовала такую ​​функцию в Visual Studio.

...