为kendo ui网格列定义自定义模板

我有一个kendo ui网格,我想绑定图像。 这是我的代码:

@model List 
@(Html.Kendo().TabStrip() .Name("tabstripMarketWatch") .Items(tabstrip => { tabstrip.Add().Text("Market Rates") .Selected(true) .Content( @ @if (Model != null) { @(Html.Kendo().Grid(Model) .Name("Grid") .Columns(columns => { columns.Template( @ @if (item.direction == 1) { up } else if (item.direction == 0) { down } ).Title(""); columns.Bound(p => p.symbol); columns.Bound(p => p.bid); columns.Bound(p => p.ask); }) //.Groupable() //.Pageable() .Sortable() .Scrollable() //.Filterable() .DataSource(dataSource => dataSource .Ajax() .Read(read => read.Action("Products_Read", "MarketWatch")) ) ) } ); tabstrip.Add().Text("Cubes") .Content(@

18ºC

Cubes

  ); }) )
#tabstripMarketWatch-1, #tabstripMarketWatch-2 { /* tabstrip element */ position: absolute; top: 41px; bottom: 0; left: 0; right: 0; width: auto; height: auto; } #Grid { top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; }

对于以下部分:

 columns.Template( @ @if (item.direction == 1) { up } else if (item.direction == 0) { down } ).Title(""); 

我得到“内联标记块不能嵌套。只允许一级内联标记。” 错误。

我需要做些什么才能成功渲染网格?

提前致谢,

 columns.Bound(p => p.bid).ClientTemplate("<# if(direction == 1) {#>" + "up" + "<#} else if(direction == 0) {#>" + "down" + "<#}#>") .Title("End").Width(80); 

这是因为剃刀看到了多个模板块,它为标签找到了这个:

  .Content( @ @if (Model != null) { .. 

和网格:

 columns.Template( @ @if (item.direction == 1) { 

Razor不喜欢这样。 尝试使用@Samuel链接的方法,即使用辅助方法呈现网格,并在您的tabstrip中调用该帮助程序。