Управление ASP.NET в теге HTML эквивалентно - PullRequest
59 голосов
/ 20 января 2009

Я ищу шпаргалку, которая позволила бы мне показать конструктору HTML эквивалентные элементы управления asp.net для стандартных тегов HTML. Например, будет отображаться как HTML

, а будет отображаться как HTML . Я гуглил это безрезультатно. Может кто-нибудь опубликовать ссылку на хороший шпаргалку, чтобы дизайнеры этого проекта могли более четко понимать разметку на страницах aspx. Чтобы было ясно, я хотел бы получить ссылку на список основных элементов управления ASP.NET с описанием их отношения к стандартному HTML. Было бы здорово, если бы это было в формате PDF или на удобной для чтения и печати веб-странице. Причиной, в моем случае, было бы то, что у нас есть PHP-разработчик, который очень хорошо знаком с HTML, и который будет работать над нашим проектом, и я чувствую, что было бы полезно лучше понять стандартные серверные элементы управления ASP.NET, если бы я мог протяните ему такую ​​"шпаргалку". Я имею в виду, в основном, .NET 2.0 framework, но мы также работаем с 3.0 / 3.5.

Ответы [ 5 ]

99 голосов
/ 20 января 2009

Это не простой вопрос, так как он зависит от того, о какой версии .NEt вы говорите, и иногда от состояний элементов управления. Например, PANEL в 1 и 1.1 отображается в TABLE, а в более поздних версиях это DIV.

Но в целом (за 2/3), здесь идет:

  • Панель - Div
  • Панель - GroupingText = "###" - это Fieldset, Legend
  • Метка - пролет
  • Кнопка - ввод, тип кнопки
  • Кнопка ссылки - Href со сценарием обратной передачи JS
  • Гиперссылка - Стандарт HREF
  • Кнопка изображения - ввод, введите изображение
  • Текстовое поле - по умолчанию ввод, введите текст
  • Текстовое поле - Режим = Ввод пароля, введите Пароль
  • Textbox - Mode = Multiline is Textarea
  • DropDownList - Выбрать
  • Список - выберите
  • RadioButton - вход, радио с GroupName
  • Флажок - Ввод, Флажок
  • Repeater / Listview --Complex.
  • Gridview - Таблица
  • Таблица - Таблица
  • Файл - Ввод, Тип = Файл

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

11 голосов
/ 20 января 2009

Стивен список довольно полный. Я бы добавил к этому следующие заметки:

В основном это зависит от известных BrowserCaps .

Панель 1.x будет отображаться как div в IE6 + - однако в Firefox (или в других браузерах "DownStream" - рассматривал DownStream, потому что в Machine.Config по умолчанию его не было), он будет отображаться как один Таблица ячейки - это может быть решено путем предоставления обновленных BrowserCaps для Firefox / Opera / Safari / etc, либо в Machine.Config, либо в Web.Configs.

Кроме того, управляющие адаптеры могут изменять выходные данные - например, Управляющие элементы CSS будут выводить стилизованные элементы div для большинства табличных элементов управления (вход в систему, регистрация, повторители и т. Д.).

Обратите внимание, что на TechEd / PDC было объявлено, что в ASP.NET 4.0 будут встроены адаптеры управления CSS по умолчанию.

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

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

<div id="myDiv" runat="server"></div>
<span id="mySpan" runat="server"></span>

Edit:

Одна вещь, которую я забыл упомянуть (как указал steve_c), это то, что добавление runat = "server" изменит идентификатор тега, что может быть немного болезненно. Вам не повезло, если вы используете идентификатор в своем CSS, но в своем JavaScript вы можете добавить что-то вроде <% = myDiv.ClientID%>, чтобы получить идентификатор, сгенерированный .Net.

0 голосов
/ 20 июня 2017
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);
    }
}
0 голосов
/ 20 января 2009

htmlgenericcontrol может быть полезен, если вам нужно визуализировать определенный тег

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