2013-03-07 3 views
0

Мой столбец привязан к объекту Employee так:свойства объекта Доступ в шаблонах клиентов Telerik

class Employee 
{ 
    int Id; 
    string Name; 
} 

Мой шаблон редактирования представляет эту колонку в виде раскрывающегося списка с параметрами заселенных AJAX связывания (мне нужно для этого, потому что параметры будут меняться в зависимости от других вариантов выбора столбца пользователем).

@(Html.Telerik().ComboBox() 
    .Name("Employee") 
    .CascadeTo("Order") 
    .DataBinding(binding => binding.Ajax().Select("GetEmployees", "Order"))) 

Однако в столбце отображается значение Employee.Id. Я обошел это, указав шаблон отображения на стороне сервера, чтобы вместо этого отобразить Employee.Name.

Теперь я пытаюсь включить редактирование InCell, и похоже, что я могу использовать только шаблоны отображения на клиентской стороне (что имеет смысл). Но как мне получить доступ к свойству Name?

Я попробовал это, что дает мне Ид ...

columns.Bound(o => o.Employee).Title("Employee") 
    .ClientTemplate("<text><#= Employee #></text>"); 

... это, что дает мне пустую строку ...

columns.Bound(o => o.Employee).Title("Employee") 
    .ClientTemplate("<text><#= Employee.Name #></text>"); 

... и это, что дает мне ошибку

columns.Bound(o => o.Employee).Title("Employee") 
    .ClientTemplate("<text><#= Name #></text>"); 

В любом случае я могу получить свою ячейку Employee для отображения, как я хочу?

+0

Это действительно странно, что columns.Bound (о => o.Employee) .title ("Сотрудник") . ClientTemplate («<# = Employee #>»); возвращает вам идентификатор. HOw использует ваш метод действий, который отображает Grid с данными? –

ответ

0

Вы можете получить доступ к свойствам на связанном объекте с помощью < #> синтаксис

columns.Bound(c => c.Name).ClientTemplate("<input id='<# Name #>' />); 
Смежные вопросы