Simple
Если все, что вам нужно, это Person.Id, когда вы нажимаете edit (вы редактируете вне сетки или что-то в этом роде), тогда это НАСТОЛЬКО просто.Ваш столбец будет:
columns.Bound(e => e.Person).Title("Person").ClientTemplate("<#= Person ? Person.Name : '' #>");
И вы можете получить идентификатор для человека:
onEdit(e) {
var personId = e.dataItem['Person'].Id;
}
Полный
Однако, если вы пытаетесь изменить всетка с использованием комбинированного списка, ваш столбец должен выглядеть следующим образом:
columns.Bound(e => e.Person).Title("Person").ClientTemplate("<#= Person ? Person.Name : '' #>").EditorTemplateName("PersonSelector");
ваш шаблон редактора:
@(Html.Telerik().ComboBox()
.Name("YourNameGoesHere")
.DataBinding(binding => binding.Ajax().Select("SelectPeopleForComboBox","Shared")))
Ваш клиентский скрипт:
onEdit(e){
$comboBox = $(e.cell).find('#Person');
if($comboBox.length > 0) {
var comboBox = $ddl.data('tComboBox');
comboBox.fill(function(){
if (e.dataItem['Person'] != null){
ddl.value(e.dataItem['Person'].Id)
}
});
}
}