Skip to content

Menu (OrchardCore.Menu)

菜单(OrchardCore.Menu)

Shapes

形状

The Menu shape is used to render a Menu.

“Menu”形状用于渲染菜单。

| Property | Description |

|财产|说明|

| --------- | ------------ |

| --------- | ------------ |

| Model.ContentItemId | If defined, contains the content item identifier of the menu to render. |

| Model.ContentItemId |如果已定义,则包含要呈现的菜单的内容项标识符。 |

| Model.Items | The list of menu items shapes for the menu. These are shapes of type MenuItem. |

| Model.Items |菜单的菜单项形状列表。这些是MenuItem类型的形状。 |

| Model.Differentiator | If defined, contains the formatted name of the menu. For instance MainMenu. |

| Model.Differentiator |如果已定义,则包含菜单的格式化名称。例如MainMenu。 |

菜单替代

| Definition | Template | Filename|

|定义|模板|文件名|

| ---------- | --------- | ------------ |

| ---------- | --------- | ------------ |

| Menu__[Differentiator] | Menu__MainMenu | Menu-MainMenu.cshtml |

| 菜单__ [微分器]| Menu__MainMenu | Menu-MainMenu.cshtml |

菜单示例


<nav>

 <font color=#0099ff size=4 face="黑体"><NAV></font> 


    <ul class="nav navbar-nav {{ Model.Classes | join: " " }}">

        {% for item in Model.Items %}

            {{ item | shape_render }}

        {% endfor %}

    </ul>

</nav>

 <font color=#0099ff size=4 face="黑体"></ NAV></font> 



@{

 <font color=#0099ff size=4 face="黑体">@ {</font> 


    TagBuilder tag = Tag(Model, "ul");

    tag.AddCssClass("nav navbar-nav");




 <font color=#0099ff size=4 face="黑体"></font> 


    foreach (var item in Model.Items)

    {

        tag.InnerHtml.AppendHtml(await DisplayAsync(item));

    }

}

 <font color=#0099ff size=4 face="黑体">}</font> 





 <font color=#0099ff size=4 face="黑体"></font> 


@tag

 <font color=#0099ff size=4 face="黑体">@标签</font> 


The MenuItem shape is used to render a menu item.

MenuItem形状用于渲染菜单项。

| Property | Description |

|财产|说明|

| --------- | ------------ |

| --------- | ------------ |

| Model.Menu | The Menu shape owning this item. |

| Model.Menu |拥有此项目的“菜单”形状。 |

| Model.ContentItem | The content item representing this menu item. |

| Model.ContentItem |表示此菜单项的内容项。 |

| Model.Level | The level of the menu item. 0 for top level menu items. |

| Model.Level |菜单项的级别。顶级菜单项的“0”。 |

| Model.Items | The list of sub menu items shapes. These are shapes of type MenuItem. |

| Model.Items |子菜单项的形状列表。这些是MenuItem类型的形状。 |

| Model.Differentiator | If defined, contains the formatted name of the menu. For instance MainMenu. |

| Model.Differentiator |如果已定义,则包含菜单的格式化名称。例如MainMenu。 |

| Definition | Template | Filename|

|定义|模板|文件名|

| ---------- | --------- | ------------ |

| ---------- | --------- | ------------ |

| MenuItem__level__[level] | MenuItem__level__2 | MenuItem-level-2.cshtml |

| MenuItem__level __ [level]| MenuItem__level__2 | MenuItem-level-2.cshtml |

| MenuItem__[ContentType] | MenuItem__HtmlMenuItem | MenuItem-HtmlMenuItem.cshtml |

| MenuItem __ [ContentType]| MenuItem__HtmlMenuItem | MenuItem-HtmlMenuItem.cshtml |

| MenuItem__[ContentType]__level__[level] | MenuItem__HtmlMenuItem__level__2 | MenuItem-HtmlMenuItem-level-2.cshtml |

| MenuItem __ [ContentType] __ level __ [level]| MenuItem__HtmlMenuItem__level__2 | MenuItem-HtmlMenuItem-level-2.cshtml |

| MenuItem__[MenuName] | MenuItem__MainMenu | MenuItem-MainMenu.cshtml |

| MenuItem __ [MenuName]| MenuItem__MainMenu | MenuItem-MainMenu.cshtml |

| MenuItem__[MenuName]__level__[level] | MenuItem__MainMenu__level__2 | MenuItem-MainMenu-level-2.cshtml |

| MenuItem __ [MenuName] __ level __ [level]| MenuItem__MainMenu__level _2 | MenuItem-MainMenu-level-2.cshtml |

| MenuItem__[MenuName]__[ContentType] | MenuItem__MainMenu__HtmlMenuItem | MenuItem-MainMenu-HtmlMenuItem.cshtml |

| MenuItem __ [MenuName] __ [ContentType]| MenuItem__MainMenu__HtmlMenuItem | MenuItem-MainMenu-HtmlMenuItem.cshtml |

| MenuItem__[MenuName]__[ContentType]__level__[level] | MenuItem__MainMenu__HtmlMenuItem__level__2 | MenuItem-MainMenu-HtmlMenuItem-level-2.cshtml |

| MenuItem __ [MenuName] __ [ContentType] __ level __ [level]| MenuItem__MainMenu__HtmlMenuItem__level__2 | MenuItem-MainMenu-HtmlMenuItem-level-2.cshtml |


<li class="nav-item{% if Model.HasItems %} dropdown{% endif %}">

 <font color=#0099ff size=4 face="黑体"><li class =“nav-item {%if Model.HasItems%} dropdown {%endif%}”></font> 


    {% shape_clear_alternates Model %}

    {% shape_type Model "MenuItemLink" %}

    {{ Model | shape_render }}

    {% if Model.HasItems %}

    <div class="dropdown-menu">

        {% for item in Model.Items %}

        {{ item | shape_render }}

        {% endfor %}

    </div>

    {% endif %}

</li>

 <font color=#0099ff size=4 face="黑体"></ LI></font> 



@{

 <font color=#0099ff size=4 face="黑体">@ {</font> 


    TagBuilder tag = Tag(Model, "li");




 <font color=#0099ff size=4 face="黑体"></font> 


    if ((bool)Model.HasItems)

    {

        tag.AddCssClass("dropdown");

    }




 <font color=#0099ff size=4 face="黑体"></font> 


    // Morphing the shape to keep Model untouched

    Model.Metadata.Alternates.Clear();

    Model.Metadata.Type = "MenuItemLink";




 <font color=#0099ff size=4 face="黑体"></font> 


    tag.InnerHtml.AppendHtml(await DisplayAsync(Model));




 <font color=#0099ff size=4 face="黑体"></font> 


    if ((bool)(Model.HasItems))

    {

        TagBuilder parentTag = Tag(Model, "div");

        parentTag.AddCssClass("dropdown-menu");




 <font color=#0099ff size=4 face="黑体"></font> 


        foreach (var item in Model.Items)

        {

            item.ParentTag = parentTag;

            parentTag.InnerHtml.AppendHtml(await DisplayAsync(item));

        }




 <font color=#0099ff size=4 face="黑体"></font> 


        tag.InnerHtml.AppendHtml(parentTag);

    }

}

 <font color=#0099ff size=4 face="黑体">}</font> 





 <font color=#0099ff size=4 face="黑体"></font> 


@tag

 <font color=#0099ff size=4 face="黑体">@标签</font> 


The MenuItemLink shape is used to render a menu item link.

MenuItemLink形状用于呈现菜单项链接。

This shape is created by morphing a MenuItem shape into a MenuItemLink. Hence all the properties

这种形状是通过将MenuItem形状变形为MenuItemLink而创建的。因此所有的属性

available on the MenuItem shape are still available.

'MenuItem`形状上可用的形状仍然可用。

| Property | Description |

|财产|说明|

| --------- | ------------ |

| --------- | ------------ |

| Model.Menu | The Menu shape owning this item. |

| Model.Menu |拥有此项目的“菜单”形状。 |

| Model.ContentItem | The content item representing this menu item. |

| Model.ContentItem |表示此菜单项的内容项。 |

| Model.Level | The level of the menu item. 0 for top level menu items. |

| Model.Level |菜单项的级别。顶级菜单项的“0”。 |

| Model.Items | The list of sub menu items shapes. These are shapes of type MenuItem. |

| Model.Items |子菜单项的形状列表。这些是MenuItem类型的形状。 |

| Model.Differentiator | If defined, contains the formatted name of the menu. For instance MainMenu. |

| Model.Differentiator |如果已定义,则包含菜单的格式化名称。例如MainMenu。 |

| Definition | Template | Filename|

|定义|模板|文件名|

| ---------- | --------- | ------------ |

| ---------- | --------- | ------------ |

| MenuItemLink__level__[level] | MenuItemLink__level__2 | MenuItemLink-level-2.cshtml |

| MenuItemLink__level __ [level]| MenuItemLink__level__2 | MenuItemLink-level-2.cshtml |

| MenuItemLink__[ContentType] | MenuItemLink__HtmlMenuItem | MenuItemLink-HtmlMenuItem.cshtml |

| MenuItemLink __ [ContentType]| MenuItemLink__HtmlMenuItem | MenuItemLink-HtmlMenuItem.cshtml |

| MenuItemLink__[ContentType]__level__[level] | MenuItemLink__HtmlMenuItem__level__2 | MenuItemLink-HtmlMenuItem-level-2.cshtml |

| MenuItemLink __ [ContentType] __ level __ [level]| MenuItemLink__HtmlMenuItem__level__2 | MenuItemLink-HtmlMenuItem-level-2.cshtml |

| MenuItemLink__[MenuName] | MenuItemLink__MainMenu | MenuItemLink-MainMenu.cshtml |

| MenuItemLink __ [MenuName]| MenuItemLink__MainMenu | MenuItemLink-MainMenu.cshtml |

| MenuItemLink__[MenuName]__level__[level] | MenuItemLink__MainMenu__level__2 | MenuItemLink-MainMenu-level-2.cshtml |

| MenuItemLink __ [MenuName] __ level __ [level]| MenuItemLink__MainMenu__level__2 | MenuItemLink-MainMenu-level-2.cshtml |

| MenuItemLink__[MenuName]__[ContentType] | MenuItemLink__MainMenu__HtmlMenuItem | MenuItemLink-MainMenu-HtmlMenuItem.cshtml |

| MenuItemLink __ [MenuName] __ [ContentType]| MenuItemLink__MainMenu__HtmlMenuItem | MenuItemLink-MainMenu-HtmlMenuItem.cshtml |

| MenuItemLink__[MenuName]__[ContentType]__level__[level] | MenuItemLink__MainMenu__HtmlMenuItem__level__2 | MenuItemLink-MainMenu-HtmlMenuItem-level-2.cshtml |

| MenuItemLink __ [MenuName] __ [ContentType] __ level __ [level]| MenuItemLink__MainMenu__HtmlMenuItem__level__2 | MenuItemLink-MainMenu-HtmlMenuItem-level-2.cshtml |


{% assign link = Model.ContentItem.Content.LinkMenuItemPart %}

 <font color=#0099ff size=4 face="黑体">{%assign link = Model.ContentItem.Content.LinkMenuItemPart%}</font> 





 <font color=#0099ff size=4 face="黑体"></font> 


{% if Model.HasItems %}

 <font color=#0099ff size=4 face="黑体">{%if Model.HasItems%}</font> 


    <a href="{{ link.Url | href }}" class="nav-link dropdown-toggle">{{ link.Name }}<b class="caret"></b></a>

{% else %}

 <font color=#0099ff size=4 face="黑体">{%else%}</font> 


    <a href="{{ link.Url | href }}" class="nav-link">{{ link.Name }}</a>

{% endif %}

 <font color=#0099ff size=4 face="黑体">{% 万一 %}</font> 



@using OrchardCore.ContentManagement

 <font color=#0099ff size=4 face="黑体">@using OrchardCore.ContentManagement</font> 





 <font color=#0099ff size=4 face="黑体"></font> 


@{

 <font color=#0099ff size=4 face="黑体">@ {</font> 


    ContentItem contentItem = Model.ContentItem;

    var link = contentItem.Content["LinkMenuItemPart"];

}

 <font color=#0099ff size=4 face="黑体">}</font> 





 <font color=#0099ff size=4 face="黑体"></font> 


if ((bool)(Model.HasItems))

 <font color=#0099ff size=4 face="黑体">if((bool)(Model.HasItems))</font> 


{

 <font color=#0099ff size=4 face="黑体">{</font> 


    <a class="nav-link dropdown-toggle" data-toggle="dropdown" href="@Url.Content((string)link.Url)">@link.Name<b class="caret"></b></a>

}

 <font color=#0099ff size=4 face="黑体">}</font> 


else

 <font color=#0099ff size=4 face="黑体">其他</font> 


{

 <font color=#0099ff size=4 face="黑体">{</font> 


    <a class="nav-link" href="@Url.Content((string)link.Url)">@link.Name</a>

}

 <font color=#0099ff size=4 face="黑体">}</font> 


CREDITS

学分

nestedSortable jQuery plugin

nestedSortable jQuery插件

https://github.com/ilikenwf/nestedSortable

https://github.com/ilikenwf/nestedSortable

License: MIT

执照:麻省理工学院