我一直在查看 Telerik MVC 扩展的源代码,但我一生都无法弄清楚模板列是如何工作的。我可以让它们正常工作,但我试图了解幕后发生的事情,因为我认为它们真的很有用。我已经浏览了源代码,但我仍然有点困惑。这是源代码示例项目中的一个示例。
Html.Telerik().Grid(Model)
.Name("Grid")
.Columns(columns =>
{
columns.Template(c => {
%><img
alt="<%= c.CustomerID %>"
src="<%= Url.Content("~/Content/Grid/Customers/" + c.CustomerID + ".jpg") %>"
/><%
}).Title("Picture");
columns.Bound(c => c.ContactName).Title("Name");
columns.Bound(c => c.Phone);
})
.Sortable()
.Scrollable(scrolling => scrolling.Height(250))
.Pageable()
.Render();
columns => {} 委托的类型Action<GridColumnFactory<T>>
是 Model IEnumerable<T>
,而 c=>{} 委托的类型是Action<TModel>
。我明白了,GridColumnFactory 上的 Template 方法被赋予了一个动作作为参数。
此操作如何用于呈现所需的 HTML?
谢谢 !!!