2015-11-20 2 views
0

У меня есть панель интерфейса Kendo UI с группировкой на RoleName. Я пытаюсь установить заголовок для сгруппированного свойства и не могу понять, как это сделать.Kendo UI Grid grouping - как установить группу Название

Модель модели представлена ​​ниже.

public class UserMembershipViewModel 
{ 
    [Display(Name = "Username")] 
    [UIHint("UsersDropdown")] 
    public string UserId { get; set; } 

    [Display(Name = "Group")] 
    [UIHint("RolesDropdown")] 
    public string RoleId { get; set; } 

    [Display(Name = "Group")] 
    public string RoleName { get; set; } 

    [HiddenInput(DisplayValue = false)] 
    [Display(Name = "Username")] 
    public string UserName { get; set; } 

    [HiddenInput(DisplayValue = false)] 
    [Display(Name = "Email")] 
    public string Email { get; set; } 
} 

Сетка Kendo создана следующим образом.

Html.Kendo().Grid(Model) 
    .Name("Grid") 
    .Columns(columns => 
    { 
     columns.Bound(p => p.UserName); 
     columns.Bound(p => p.Email); 
     columns.Command(command => 
     { 
      command.Destroy(); 
     }).Title("Actions").Width(200); 
    }) 
    .Editable(editable => editable 
       .Mode(GridEditMode.PopUp) 
       .Window(window => window 
        .Title("Add Group Member") 
        .Draggable(true))) 
    .ToolBar(toolbar => toolbar.Create().Text("Add Group Member")) 
    .Pageable() 
    .Sortable() 
    .Groupable() 
    .DataSource(dataSource => dataSource 
      .Ajax() 
      .Model(model => 
      { 
       model.Id(user => user.UserId); 
       model.Field(user => user.UserId).Editable(false); 
      }) 
      .Events(events => events 
       .Sync("sync_handler")) 
      .Group(group => group.Add(model => model.RoleName)) 
      .Create(create => create.Action("MembershipCreate", "UserManagement")) 
      .Read(read => read.Action("MembershipRead", "UserManagement")) 
      .Destroy(destroy => destroy.Action("MembershipDestroy", "UserManagement")) 
    ) 

И результат это ..

Kendo UI Grid

RoleName свойство в модели представления имеет Display атрибут на нем. Этот атрибут работает для установки заголовка заголовков столбцов (вы можете увидеть заголовок столбца Username на изображении), но не работает на заголовках групп.

Таким образом, RoleName на изображении должно быть Group. Любые идеи о том, как установить название группы?

ответ

0

добавить поле группы, как скрытый столбец с ClientGroupHeaderTemplate:

columns.Bound(p => p.RoleName).ClientGroupHeaderTemplate("#=value#").Hidden();