AutoEventWireup false на странице с большим количеством элементов управления (C #) - PullRequest
3 голосов
/ 29 апреля 2009

Используя C #, существует веб-форма со многими элементами управления, для которой AutoEventWireup имеет значение false. Это заставляет вас инициализировать необходимые вам обработчики в ctor или переопределить OnInit.

Как насчет обработки, необходимой для элементов управления на странице? Добавление кнопки Click и SelectedIndexChanged для выпадающих списков и списков, а не для нескольких событий GridView и т. Д.

Если для AutoEventWireup задано значение true, это повлияет на производительность, поскольку все события для всех элементов управления (включая страницу) будут закулисными, даже для всех, которые вам не нужны.

Если для AutoEventWireup установлено значение false, правильно ли иметь дюжину или две подписки на события в ctor / OnInit? (This.Load + = ... this.GridView1.Sorted + = ... this.Button1.Click + = ... и т.д.).

Ответы [ 2 ]

3 голосов
/ 29 апреля 2009

Да, вам нужно будет вручную подключить все события самостоятельно, если вы установите AutoEventWireup на false. Метод OnInit является хорошим способом связать эти обработчики событий, и у вас должно быть столько подписок на события, сколько вам нужно для элементов управления на вашей странице.

AutoEventWireup хорошая идея, но она медленная и немного волшебная. Я считаю, что гораздо лучше, если вы сами явно проводите прослушивание.

1 голос
/ 29 апреля 2009

AutoEventWireUp только автоматически связывает определенные события встроенной страницы или уровня управления, а не каждое событие каждого элемента управления на вашей странице.

Список см. Ответ Саймона на на этот вопрос .

...