【问题标题】:Kendo MVC Grid column type is not being setKendo MVC Grid 列类型未设置
【发布时间】:2012-08-04 21:38:50
【问题描述】:

我正在将 Telerik ASP.net MVC 迁移到 Kendo ASP.net MVC。在 Telerik MVC 中,我使用数组中的一个对象和在 Bound 调用中指定的对象类型来限制列,并且一切正常。

columns.Bound(field.EntityFieldType, field.EntityFieldName).Title(field.DisplayName).Template(g =>
{<%= g.GetValue(field.EntityFieldId)%>}).Width(field.Width);
.......

但是使用 Kendo MemberType 会被忽略并保持为空。有没有其他方法可以在 Kendo 中设置 MemberType?或者,如果 Kendo 仅将数据模式用于列数据类型,那么我如何在运行时更新模式?

【问题讨论】:

    标签: asp.net-mvc telerik-mvc kendo-ui


    【解决方案1】:

    Telerik 似乎不赞成使用 Type in Bound 调用,而是改用 DataSource Schema Model。在绑定任何列之前,我通过清除模型架构解决了我的问题。

    columns.Container.DataSource.Schema.Model.Fields.Clear();
    

    然后在每个绑定列之后,我在模型字段列表中添加了一个新条目。由于我的字段名称包含点(。)我需要将字段名称放在引号中,以便生成 JSon 是正确的。

    ModelFieldDescriptor modelField = new ModelFieldDescriptor();
    modelField.Member = "\"" + field.EntityFieldName + "\"";
    modelField.MemberType = field.EntityFieldType;
    modelField.DefaultValue = null;
    modelField.IsEditable = false;
    columns.Container.DataSource.Schema.Model.Fields.Add(modelField);
    

    【讨论】:

      猜你喜欢
      • 2012-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多