Хотя веб-элементы управления и элементы управления Html имеют много схожих функций и выглядят одинаково, их внутренние механизмы реализации совершенно различны.
Веб-элементы управления работают лучше, чем элементы управления Html
1. Их также довольно удобно использовать. Вот простой пример, такой как генерация Button:
Элемент управления Html помещает на страницу всю огромную коллекцию элементов управления. Какая функция используется, просто установите свойства следующим образом:
<тип ввода=отправить/кнопка runat=сервер>
Это потребует значительного количества ресурсов управления.
Веб-элементы управления интегрированы в отдельные функции:
<asp:button id="btnOK" />
Это может сэкономить ресурсы, занимаемые ненужными элементами управления.
2. Веб-элементы управления имеют функцию обратного вызова и могут использовать ViewState для поддержания состояния элемента управления.
Элемент управления Html не может. При нажатии на операцию страницы ее состояние будет потеряно.
Вы можете провести такой эксперимент:
I. Создайте два файла соответственно: a.html b.aspx.
II. Добавьте RadioButton элемента управления Html и кнопку на страницу a.html.
Добавьте RadioButton веб-элемента управления и кнопку в b.aspx.
III.a.html запускается напрямую двойным щелчком браузера, а b.aspx запускается через IIS.
IV В работающем интерфейсе a.html выберите RadioButton, а затем нажмите кнопку Button. Вы обнаружите, что RadioButton.
Снимите флажок (потеряйте свое состояние), но выполните ту же операцию на странице b.aspx, RadioButton не будет потерян, поскольку ViewState
Для него сохраняется статус. Вы можете нажать «Просмотр» -> «Исходный файл» в меню браузера в интерфейсе запуска, чтобы открыть файл кода Html.
Найдите зашифрованный ViewState, подобный следующему:
<input type="hidden" name="_VIEWSTATE" value="dDw0ajfmafmjfzzmj4"/>
Фактически, принцип реализации ViewState заключается в помещении некоторой информации в скрытый элемент управления, а информация ViewState, сгенерированная asp.net,
сохраняется на клиенте.
Здесь следует отметить следующее:
Функцию обратной связи можно включить только в том случае, если формат файла *.aspx и элемент управления имеет атрибут: «runat=server».
3. Самая большая разница между HTML-элементами управления и веб-элементами управления — это разные методы обработки событий. Для управления формой HTML:
Когда возникает событие, его обрабатывает браузер. Но для веб-элементов управления событие генерируется только браузером, но браузер не обрабатывает его. Клиенту необходимо отправить сообщение на сервер, чтобы сообщить серверу об обработке события. Однако некоторые события
например:
Такие события, как нажатие клавиши/перемещение/мышь и т. д., эти события недоступны в Asp.net.
(Поскольку эти события очень оперативны, сервер не может их обработать достаточно быстро.) В этот момент в игру вступает элемент управления Html в сочетании с событиями Html,
которые помогают завершить процесс.
Ниже приведены некоторые часто используемые события в Html.
Событие управления HTML, выполняемое в браузере:
запускается при нажатии:
<INPUT type="button" value="Click Me" onclick="alert('Hi, Hello!');">
Срабатывает, когда мышь подпрыгивает:
<INPUT type="button" value="Click Me" onmouseup="alert('Hi, Hello!');">
//Срабатывает при наведении курсора на элемент управления
<INPUT type="button" value="Click Me" onmouseover="alert('Hi, Hello!');">
//Срабатывает, когда мышь перемещается над элементом управления
<INPUT type="button" value="Click Me" onmousemove="alert('Hi, Hello!');">
//Срабатывает при двойном щелчке элемента управления
<INPUT type="button" value="Click Me" ondblclick="alert('Hi, Hello!');">
//Когда фокус находится на элементе управления, он срабатывает при нажатии клавиши
<INPUT type="button" value="Click Me" onkeypress="alert('Hi, Hello!');">
//Срабатывает при нажатии клавиши
<INPUT type="button" value="Нажмите на меня" onkeydown="alert('Привет, привет!');">