asp.net: различие между runat = “сервер” и управлением сервером

Есть два способа сделать это:

(1) Произвольно выбрать из записей, которые соответствуют максимальному значению:

import random
key_list=[(2, 'just', 'sd'), (2, 'great', 'sd'), (1, 'just great', 'sd')]
m = max(i[0] for i in key_list)
print(random.choice([i for i in key_list if i[0] == m]))

(2) Использовать специальную функцию клавиш, которая применяет случайный тай-брейк:

print(max(key_list, key=lambda i: i[0] + random.random()))
# or
print(max(key_list, key=lambda i: (i[0], random.random())))
11
задан Dasha Salo 18 May 2009 в 11:19
поделиться

6 ответов

Первый создает System.Web.UI.WebControls.Button , а второй создает System.Web.UI.HtmlControls.HtmlInputButton .

Оба являются серверными элементами управления, но элементы управления в пространстве имен WebControls обычно имеют немного больше функциональных возможностей, чем элементы управления в пространстве имен HtmlControls . Обычно они помещают некоторые данные в ViewState для отслеживания своего состояния, и у них есть события обратной передачи на стороне сервера.

Каждый элемент управления в пространстве имен HtmlControls точно соответствует элементу HTML,

20
ответ дан 3 December 2019 в 07:14
поделиться

Кнопка, представленная , будет преобразована в серверный веб-элемент управления с расширенной моделью состояния и различными свойствами. и методы, которые имеют более четкое представление в реальном мире, например Button.Text = "Click Me".

Кнопка, представленная будет преобразован в серверный элемент управления html, представленный HtmlInputButton; with имеет ограниченные свойства, методы и события. Большинство свойств напоминают эквиваленты html, такие как Button.Value = "Click Me".

Обратите внимание, что элементы на странице разметки предварительно обрабатываются / компилируются перед использованием и будут преобразованы в представление класса, в котором представлен каждый элемент с помощью контроля.

1
ответ дан 3 December 2019 в 07:14
поделиться

Первая строка - это ASP.NET, вторая - простой XHTML.

Первая строка анализируется и интерпретируется на стороне сервера, после чего генерируется HTML-код, который в значительной степени соответствует ваш второй пример. Кнопка ASP.NET на самом деле немного больше, чем легкая оболочка над функциональностью кнопки ввода HTML, и ее следует использовать везде, где вам нужно обрабатывать событие Click на стороне сервера (или в общем случае любые события) , и обычно это правильный вариант, поскольку вы позволяете ASP.NET абстрагироваться от идеи кнопки на вашей странице.

0
ответ дан 3 December 2019 в 07:14
поделиться

функциональность оба элемента управления одинаковы с той разницей, что первый - это элемент управления .net, а второй - элемент управления html, который можно сделать серверным, используя

runat = "server".

, а первый богат на эванты и методы thn второй ....

0
ответ дан 3 December 2019 в 07:14
поделиться

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

-1
ответ дан 3 December 2019 в 07:14
поделиться

Ваш второй вариант, вероятно, даже не сработает. runat = "server" будет отображаться непосредственно в выводе HTML, где он не будет иметь никаких функциональных возможностей и только нарушит проверку HTML.

input - это элемент HTML, который имеет только свойства HTML и определенно не имеет никаких методов.

-3
ответ дан 3 December 2019 в 07:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: