Как вы убедились, вы можете преобразовать любой HTML-элемент в серверный элемент управления с атрибутом runat="server", и страница может содержать неограниченное количество элементов управления HTML. В дополнение к добавляемым вами элементам управления Web-форма может также содержать отдельный элемент управления HtmlHead, предоставляющий серверный доступ к дескриптору <head>.
Дерево элементов управления, показанное в предыдущем примере, не содержит элемент управления HtmlHead, поскольку атрибут runat="server" не был применен к дескриптору <head>. Однако по умолчанию Visual Studio всегда делает дескриптор <head> серверным элементом управления в отличие от предыдущих версий ASP.NET.
Как и в, случае с другими серверными элементами управления, вы можете использовать элемент управления HtmlHead для программного изменения содержимого, преобразуемого в дескрипторе <head>. Различие заключается в том, что дескриптор <head> не соответствует фактическому содержимому, которое можно увидеть на Web-странице. Вместо этого он содержит другую информацию наподобие заголовка, дескрипторов метаданных (что полезно при предоставлении ключевых слов для поисковых механизмов) и ссылок на таблицы стилей. Для изменения этой информации вы можете использовать один из небольших наборов элементов, определенных в интерфейсе IPageReader. Элемент управления HtmlHead реализует интерфейс IPageHeader. Он содержит следующие свойства:
Из представленного списка наиболее полезным является свойство Metadata. Ниже приведен пример программной установки заголовка:
Page.Header.Title = "Dynamically Titled Page";
Page.Header.Metadata.Add("Keywords", ".NET, C#, ASP.NET");
Page.Header.Metadata.Add("Description", "A great website to learn .NET");
Совет. Элемент управления HtmlHead полезен на сверхдинамических страницах. Например, при разработке управляемого данными Web-сайта, обслуживающего содержимое рекламной базы данных, может возникнуть потребность в изменении ключевых слов и названия страницы в зависимости от содержимого, используемого при запросе страницы.
предыдущая следующая страница оглавление
129