Menu (OrchardCore.Menu)
菜单(OrchardCore.Menu)
Shapes
形状
Menu
Menu
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
。 |
Menu Alternates
菜单替代
| Definition | Template | Filename|
|定义|模板|文件名|
| ---------- | --------- | ------------ |
| ---------- | --------- | ------------ |
| Menu__[Differentiator]
| Menu__MainMenu
| Menu-MainMenu.cshtml
|
| 菜单__ [微分器]
| Menu__MainMenu
| Menu-MainMenu.cshtml
|
Menu Example
菜单示例
<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>
MenuItem
MenuItem
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
。 |
MenuItem Alternates
MenuItem替代
| 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
|
MenuItem Example
MenuItem示例
<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>
MenuItemLink
MenuItemLink
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
。 |
MenuItemLink Alternates
MenuItemLink替代
| 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
|
MenuItemLink Example
MenuItemLink示例
{% 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
执照:麻省理工学院