Стилизованная навигационная цепочка с использованием MVCsiteMapPath

Я использую MVCSiteMapProvider здесь: https://github.com/maartenba/MvcSiteMapProvider и пытаюсь стилизовать мою навигационную цепочку, чтобы она выглядела похожей на http://www.psd100.com/wp-content/uploads/2013/02/breadcrumb-navigation-psd-free-download022701.jpg)

Кто-нибудь добился успеха в этом? Возможно, сгенерировав ul & li на основе текущей страницы, на которой вы находитесь. Прямо сейчас я получаю хлебные крошки, но я хочу добавить к ним фоновое изображение стрелки, и если я не могу получить ul & li, это невозможно сделать.

Заранее спасибо!


person MannfromReno    schedule 22.05.2013    source источник
comment
не могу увидеть гифку   -  person AAlferez    schedule 22.05.2013
comment
ладно, исправлено. прости за это.   -  person MannfromReno    schedule 22.05.2013
comment
Я думаю, вы можете сделать это с помощью js, добавив стиль к каждому элементу. Я видел что-то подобное с jqsimplemenu (погуглите).   -  person AAlferez    schedule 22.05.2013
comment
В итоге я просто создал вспомогательный класс html и использовал его для создания списка и применил CSS к этому списку.   -  person MannfromReno    schedule 23.05.2013
comment
Да, я думаю, что я сделал то же самое в другом проекте. Это прекрасно работает. Напишите свой ответ и через 2 дня отметьте его как правильный :)   -  person AAlferez    schedule 23.05.2013


Ответы (1)


На самом деле нет необходимости создавать свой собственный HTML-помощник (хотя это, безусловно, вариант). Все помощники HTML в MvcSiteMapProvider являются шаблонными. Вы можете настроить шаблоны по умолчанию, отредактировав их в папке /Views/Shared/DisplayTemplates/.

Для HTML-помощника пути карты сайта необходимо отредактировать файл SiteMapPathHelperModel.cshtml (или SiteMapPathHelper.aspx).

Обратите внимание, что вы также можете использовать имена шаблонов, чтобы использовать более одного шаблона в одном помощнике HTML.

@Html.MvcSiteMap().SiteMapPath("MyTemplateName")

Это будет соответствовать шаблону с именем MyTemplateName.cshtml или MyTemplateName.aspx.

person NightOwl888    schedule 18.08.2013