在Mega菜单中显示Umbraco网格

时间:2016-10-21 11:49:39

标签: razor umbraco

我想在Mega菜单中显示Umbraco Grid,在这种情况下我不能使用@ CurrentPage.GetGridHtml(“”)。 我需要使用节点变量:myNode.GetProperty(“menuGrid”)

来获取它

最好的方法是什么?

2 个答案:

答案 0 :(得分:1)

您可以使用各种方式从网格中获取内容。这些都在这里描述:https://our.umbraco.org/documentation/getting-started/backoffice/property-editors/built-in-property-editors/grid-layout/render-grid-in-template

在我看来,最好的方法是创建自定义网格视图/渲染器,并在此处使用适当的方法来检索内容,例如。

@CurrentPage.GetGridHtml(Html, "yourGridPropertyAlias", "customgridview")
@CurrentPage.GetGridHtml(Html, "yourGridPropertyAlias", "/views/othercustomgridview.cshtml")

答案 1 :(得分:0)

Marcin的建议有助于找到解决方案。

为了防止有人在寻找类似的东西,我的INode无法访问GetGridHtml。转换为打字内容后,我重新获得了该属性的访问权限

 foreach (var country in countryNode.ChildrenAsList)
                                                {
                                                    var myNode = Umbraco.TypedContent(country.Id);
                                                    var property = myNode.GetGridHtml("menuGrid");
                                                }