ASP.NET Управление к эквиваленту бирки HTML
Я ищу шпаргалку, которая позволит мне показать HTML-дизайнеру эквивалент asp.net элементы управления для стандартных тегов HTML. В качестве примера элемент будет отображаться как HTML-тег
чтобы быть ясным, я хотел бы ссылку на список майор ASP.NET элементы управления, с описаниями того, как они будут относиться к стандартному HTML. Было бы здорово, если бы это было в формате PDF или на легко читаемой и печатной веб-странице. Причина, в моем случае, заключается в том, что у нас есть разработчик PHP, который очень хорошо знаком с HTML, который работает над нашим проектом, и я считаю, что было бы полезно лучше понять стандарт ASP.NET сервер контролирует, могу ли я передать ему такую "шпаргалку".
Я имею в виду в основном .NET 2.0 рамки, но мы также делаем работу с 3.0/3.5.
5 ответов:
Это не простой вопрос, так как это зависит от того, о какой версии .NEt вы говорите и состояния элементов управления иногда. Например, панель в 1 и 1.1 отображается в таблице, а в более поздних версиях это DIV.
но в целом (на 2/3), вот:
- Panel-Div
- Panel -- GroupingText= "### " is Fieldset, Legend
- Label-Span
- Кнопка-Вход, Введите Кнопку
- кнопка связи-Href с JS Скрипт Обратной Передачи
- гиперссылка-стандартный HREF
- Кнопка Изображения-Вход, Введите Изображение
- текстовое поле -- по умолчанию ввод, Введите текст
- Textbox -- Mode = пароль вводится, введите пароль
- Textbox -- Mode= Multiline is Textarea
- Выпадающий Список-Выберите
- Списке - Выберите
- RadioButton-вход, радио с именем группы
- Checkbox-Ввод, Флажок
- Repeater / Listview --Complex.
- Gridview-Table
- Таблицы - Таблица
File-Input, Type=File
Это азы. Более эзотерические элементы управления, такие как элемент управления LOGIN, представляют собой таблицу с кучей коэффициентов внутри нее.
Стивен ' s список довольно полный. Я бы добавил к нему следующие заметки:
в основном это зависит от известного BrowserCaps.
A 1.панель x будет отображаться как div в IE6+ - однако в Firefox (или других "нисходящих" браузерах - считается нисходящим, потому что в машине не было никаких подробностей об этом.Config по умолчанию) он будет отображаться как таблица с одной ячейкой - это можно решить, предоставив обновленные BrowserCaps для Firefox/Opera/Safari / etc, либо в машине.Config или Web.Конфигурации.
кроме того, адаптеры управления могут изменять выход - например,адаптеры управления CSS выводит стилизованные divs для большинства табличных элементов управления (вход, регистрация, повторители и т. д.).
обратите внимание, что на TechEd/PDC было объявлено, что ASP.NET 4.0 будет иметь адаптеры управления CSS, встроенные по умолчанию.
это не дает прямого ответа на ваш вопрос, но во многих случаях вы можете добавить runat= "server" в обычный HTML-тег, чтобы сделать ASP.Net осознавая это. Это может облегчить работу дизайнера, если вы хотите иметь возможность динамически изменять страницу, но все же позволять дизайнеру работать над ней.
<div id="myDiv" runat="server"></div> <span id="mySpan" runat="server"></span>Edit:
одна вещь, которую я забыл упомянуть (как указано steve_c), заключается в том, что добавление runat= "server" изменит идентификатор для тега, который может быть немного немного больно. Вам не повезло, если вы используете идентификатор в своем CSS, но в своем JavaScript вы можете добавить что-то вроде , чтобы получить ID, который был сгенерирован .Чистая.
protected void CreateHeaders(List<Group_Info> group_Info) { foreach (Group_Info gi in group_Info) { HtmlGenericControl groupContainer = new HtmlGenericControl("DIV"); String lastLableID = "disp" + gi.GroupName.ToString().Replace(" ", ""); groupContainer.ID = lastLableID; groupContainer.Attributes.Add("class", "content-groups"); HtmlGenericControl groupTitle = new HtmlGenericControl("DIV"); groupTitle.ID = lastLableID + "Sub1"; if (gi.GroupName.Trim().Length == 0) groupTitle.Attributes.Add("class", "titlebar-hidden"); else { groupTitle.Attributes.Add("class", "titlebar"); groupTitle.InnerText = gi.GroupName.ToString().Trim(); } groupContainer.Controls.Add(groupTitle); CreateFields(gi, ref groupContainer); this.pageContainer.Controls.Add(groupContainer); } }
Comments