1

我的 Layout.cshtml 中有以下代码,用于将用户控件添加到标题中:

WorkContext.Layout.Header.Add(New.User(), "10");

然而,在标题中

<article class="widget-HeaderMenu widget-header widget-menu-widget widget" shape-id="5">

之前渲染

<div class="user-display" shape-id="15">(这是注入 WorkContext 的东西)

两者都是向右浮动的,但是需要颠倒顺序以使用户控件出现在菜单的右侧。

我怎么做?

我很好奇它是否与第二个参数有关WorkContext.Layout.Header.Add(New.User(), "10");,即使我将它设置为超过 9000,它似乎也没有任何作用?顺便说一句,我将左侧参数识别为 Clay 对象的实例化。

编辑

经过一些实验后,似乎第二个参数是区域内注入形状的顺序。

编辑2

我得到了我想要将 bij 添加<li>@Display(New.User())</li>到 MenuWidget 备用的效果。

替代方案将是:

@{
// Model is Model.Menu from the layout (Layout.Menu)
var tag = Tag(Model, "ul");

var items = (IList<dynamic>)Enumerable.Cast<dynamic>(Model.Items);

if (items.Any()) {
    items[0].Classes.Add("first");
    items[items.Count - 1].Classes.Add("last");
    }    
}
<nav id='topnav'>

    <ul>
       @DisplayChildren(Model.Menu)
        <li>@Display(New.User())</li>
    </ul>
</nav>

另请参阅:如何控制 Orchard 中菜单的呈现

4

1 回答 1

0

最简单的可能是为您引入一个新区域。

于 2013-02-25T17:29:23.873 回答