1

嗨,我有一个 ModelView

public class GridUser
            {
                    public long id { get; set; }
                    public string username { get; set; }
                    public string name { get; set; }
                    public string email { get; set; }
                    public string surname { get; set; }
                    public DateTime createDate { get; set; }
                    public List<string> customfields { get; set; }
            }

我无法绑定在 foreach 内部编写的字符串的字符串列表

.Columns(columns =>{

拜托,有人可以发布带有列表绑定的示例代码吗?

4

1 回答 1

2

如果将列绑定到此列表属性 - 您将无法正确显示该集合 - 您也不会进行排序/过滤等。您可以使用 Template/ClientTemplate(取决于您的绑定)列遍历集合并显示项目。例如

@model IEnumerable<GridOneToManyTemplate.Models.Customer>

@(Html.Telerik().Grid<GridOneToManyTemplate.Models.Customer>()
    .DataBinding(config=> config.Ajax()
                            .Select("Customers","Home"))
    .Name("Grid")
    .Columns(cols =>
        { 
            cols.Bound(c => c.CompanyName);
            cols.Bound(c => c.Orders).ClientTemplate("<#= template(data) #>");
        })
    .Pageable(pages=> pages.PageSize(3))
)


<script>
    function template(item) {
        var html = "<ul>";
        for (var i = 0; i < item.Orders.length; i++) {
            html += "<li>";
            html += item.Orders[i].OrderID;
            html += "</li>";
        }
        html += "</ul>";
        return html;
    }  
</script>
于 2012-09-10T18:05:51.787 回答