logo

[ELMA4] Контейнер с плашкой (LabeledContainer)

Позволяет создать контейнер с плашкой в верхней части. В качестве содержимого плашки может принимать как html-разметку, так и обычный текст. Присутствует возможность отобразить заголовок внутри контейнера.

Пример отображения контейнера с плашкой

Пример реализации контейнера с плашкой

@using (Html.LabeledContainer(SR.T("Текст плашки"))
{
    @Html.Partial("SomeView");
}

Для контейнера можно указать дополнительные атрибуты при объявлении, например добавить класс:

@using (Html.LabeledContainer(SR.T("Текст плашки"), new { @class="container-custom-class" }))
{
    @Html.Partial("SomeView");
}
Примечание
Если указать пустой текст для плашки, то контейнер отобразится без нее. Это может быть полезно, если необходимо отобразить контейнер с заголовком внутри.

Задание заголовка внутри контейнера с плашкой

Чтобы отобразить заголовок внутри контейнера, необходимо вызвать html-хэлпер перед объявлением самого контейнера:

//  объявление заголовка
Html.LabeledHeader(SR.T("Заголовок внутри контейнера"));
///  ...
//  Объявление контейнера
@using (Html.LabeledContainer(SR.T("Label"))
{
    @Html.Partial("SomeView");
}

Внутри заголовка можно отобразить не только текст, но и разметку. Для этого можно использовать различные перегрузки данного метода, а также передавать в качестве текста заголовка разметку.

Пример отображения заголовка с разметкой в контейнере с плашкой

На этом рисунке в качестве текста заголовка передается разметка изображения с действием на клик и названием документа. Кроме того, используется перезагрузка, принимающая на вход сущность, из-за чего в заголовке отображается кнопка Подписаться на рассылку. Подобное поведение распространяется с метода Html.Header.

Примечание

Некоторые перегрузки метода LabeledHeader имеют параметры по умолчанию: setTitle = true и encode = true. Параметр setTitle устанавливает содержимое заголовка контейнера как заголовок всей html-страницы, а encode – экранирует содержимое заголовка.

Если не нужно задавать заголовок html-страницы такой же, как текст заголовка, то установите setTitle = false.

Если требуется отобразить разметку в тексте заголовка контейнера, то установите setTitle = false и encode = false.