События веб-управления Visual Studio отображаются только в режиме разработки? - PullRequest
5 голосов
/ 05 января 2009

Вызов всех гуру Visual Studio - когда я работаю над файлом .ascx или .aspx в веб-проекте ac #, события не отображаются на панели свойств, пока я не переключусь на дизайн вид из кода вид. Это преднамеренная функциональность Visual Studio? И VS2005, и VS2008, похоже, работают таким образом.

И есть ли способ постоянно отображать события на панели свойств?

Ответы [ 3 ]

4 голосов
/ 05 января 2009

Я не знаю, так ли это, как VS, и должен работать, но да, это ограничение. В случае, если вы заметили, что иногда нажатие на элемент управления и нажатие клавиши F4 (или нажатие на вкладку свойств) не приводит к загрузке свойств для правильного элемента управления, а затем вам нужно выбрать его из списка.

Вздох

Кроме того, если вы создаете собственный пользовательский контроль и назначаете ему событие, это событие не будет отображаться на вкладке свойств, когда вы помещаете его на страницу. Вы должны будете захватить его вручную в событии Page_Init (как продемонстрировано fallen888).

В эти дни я не беспокоюсь о переходе на вкладку свойств, чтобы увидеть событие. Вы также можете ввести имя события в разметку и затем записать его в файл с выделенным кодом.

2 голосов
/ 05 января 2009

Да, именно так Visual Studio предназначен для работы. Это не поможет вам просмотреть их на панели свойств, но вы можете получить список событий (среди прочего), набрав в коде следующее:

"this." и intellisense должен показать вам список.

Обычно я перезаписываю метод OnInit и помещаю туда все сопоставления обработчиков событий. Чтобы это выглядело примерно так:

override protected void OnInit(EventArgs e)
{
  this.Load += new System.EventHandler(this.Page_Load);
  this.myButton.Click += new System.EventHandler(this.myButton_Click);

  base.OnInit(e);
}

Если вы сделаете это с помощью intellisense, как только вы введете «+ =», у вас будет возможность автоматически завершать эту строку и подпись метода обработчика событий.

0 голосов
/ 05 января 2009

Да, мне бы хотелось, чтобы у нас был аналогичный уровень автозаполнения событий, который мы получаем в WPF, где вы можете видеть имя события в IntelliSense и получать его для автоматического создания нового события-заглушки для вас в коде: (

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...