Обычные элементы управления нельзя использовать в области заголовка веб-страницы, но иногда они очень важны, например заголовок, ключевые слова и описание, которые могут быть разными на каждой странице. Итак, как мы можем динамически устанавливать их в соответствии с? содержание?
Метод 1: То, что может сделать asp, конечно, может сделать asp.net. Пока вы пишете всю страницу с помощью Response.Write(), нет ничего, что нельзя было бы настроить. Конечно, вы также можете «<%=a. определенный член %" >". Но очевидно, что при этом нельзя использовать преимущества .net.
Способ 2. Используйте уникальный атрибут asp.net: runat="server", установите идентификатор для заголовка, а затем сделайте его переменной сервера, после чего вы сможете установить его текст. Но полученный таким образом html также будет содержать идентификатор, на который очень неприятно смотреть.
Способ 3. Используйте буквальное управление, стойка регистрации:
Кроме того, на моей странице используется множество пользовательских элементов управления, и эти пользовательские элементы управления имеют уровни. Заголовок страницы может определяться подпользовательским элементом управления в пользовательском элементе управления, а уровень вложенности пользовательских элементов управления не фиксирован. Итак, как установить его динамически?
На домашней странице создайте базовый класс пользовательского элемента управления и добавьте к нему общедоступный метод:
public void SetTitle(string title)
{
SetLiteralText("lt_title", string.Format("
if(ctrl != null)
{
lt = ctrl.FindControl(id) как литерал;
если (lt != ноль)
lt.Текст = текст;
}
}
Таким образом, вашему пользовательскому элементу управления нужно только наследовать этот базовый класс, а затем вызвать base.SetTitle("title"), когда вы хотите установить заголовок страницы, и задача просто завершается. Для остальных тегов в области заголовка принцип тот же, что и для настройки заголовка.