将DisplayTemplate设置为WebGrid列
我有这个样本
@Html.DisplayFor(modelItem => item.Expires, "DateTimeToDate" )
DateTimeToDate显示模板:
@model DateTime? @Html.Label(Model.HasValue ? Model.Value.ToShortDateString(): string.Empty)
柱
... grid.Column("Expires", @Resources.Localization.Expires, canSort: true) ...
那么,我如何在webgrid列中使用DisplayTemplate?
regrads。
如果视图模型的Expires
属性是DateTime,并且您有自定义显示模板,则可以尝试以下操作:
grid.Column("Expires", format: @@Html.DisplayFor(x => item) )
这应该为视图模型中每个项目的Expires属性呈现~/Views/Shared/DisplayTemplates/DateTime.cshtml
。
这是一个适合我的片段,你需要根据自己的情况调整它。
WebGridColumn adminColumn = grid.Column(columnName: string.Empty, header: string.Empty, format: (item) => new HtmlString(Html.ActionLink("Edit", "Edit", new { id = item.Id }, null).ToString() + "|" + Html.ActionLink("Delete", "Delete", new { id = item.Id }, null).ToString())); columns.Add(adminColumn);
我发现这篇文章完全符合您的需求我猜…
太糟糕了,当你问这个问题时,还没有写好!