Что такое a LiteralControl
? Я читал о LiteralContols, но я не уверен, почему они используются. Я использовал этот код перечислить средства управления на странице и - у меня есть страница, которая имеет маркировку и кнопку. Когда я использую это
foreach (Control control in Page.Controls)
{
Response.Write(control.GetType().ToString() + " - <b> " + control.ID + "</b><br />");
if (control is LiteralControl)
{
Response.Write("Textt :" + ((LiteralControl)control).Text.ToString() + " - " +
Server.HtmlEncode(((LiteralControl)control).Text + "<br />") );
}
}
Я нахожу, что существует на самом деле LiteralControls
это сгенерировано и перечислено, прежде и после каждого управления я добавил к своей странице. Элементы управления литерал также имеют только текстовое свойство.
Я все еще не уверен почему LiteralControls
необходимы и используются? Почему LiteralControls
б/У? Почему делают средства управления, которые я добавляю к своей странице, один LiteralControl поместил прежде и после? И почему у них есть только текстовое Свойство?
Из MSDN Literal Control представляет HTML-элементы, текст и любые другие строки на странице ASP.NET, которые не требуют обработки на сервере.
Также посмотрите здесь об использовании Literal Control
Метка label
отображает тег . Это позволяет вам программно изменять
характеристики отображения некоторого текста, который вы хотите отобразить. A
LiteralControl
отображает именно тот статический HTML, который вы хотите. Нет никаких общих
преимуществ одного перед другим. Один может быть полезнее другого
в определенных обстоятельствах. Например, если вы хотите отобразить статичный текст,
и не вносить в него никаких программных изменений, вам лучше использовать
LiteralControl.
LiteralControl используется для вставки HTML на вашу страницу во время выполнения.
Многие программисты, которые не понимают значения семантической разметки (особенно те, у кого есть в основном фон Windows Forms), будут использовать элемент управления Label или тег HTML LABEL в качестве заполнителя для программно- сгенерированный текст на странице. Недостатком этого является то, что метка имеет семантическое значение в документе HTML.
Использование литерала дает вам элемент управления с атрибутом ID, к которому можно подключиться, в то же время позволяя вам вводить семантически правильную разметку вокруг него.
Кроме того, если вы в конечном итоге не помещаете какой-либо текст в тег LABEL, он все равно будет выводить тег в вашем HTML, например:
, тогда как Literal без текст ничего не выведет - намного чище.
Вы получите LiteralControl
для любой HTML-разметки, которая не является частью элемента управления сервера ASP.NET. Это просто способ, которым фреймворк отображает HTML-разметку вашей страницы. Свойство Text
- это просто этот HTML, который также включает любые пробельные символы.
В одном веб-приложении я подключился к определенным буквальным
элементам управления на странице для добавления текста во время выполнения.Элемент управления literal
не создает собственной разметки, но с радостью отображает любой HTML-код, который вы предоставляете свойству Text, а также необработанный текст.