or
1.@(Html.Kendo().Tooltip()2. .For(".glyphicon-question-sign")3. .Position(TooltipPosition.Top)4. .Animation(true) 5. .Events(events => events.Show("tooltipReset"))6. .Width(450)7. .ContentTemplateId("tooltip-template")8.)01.<script id="tooltip-template" type="text/x-kendo-template">02. <div id="tooltipContent" class="panel panel-primary">03. <div class="panel-heading">04. <h3 class="panel-title"><span class="glyphicon glyphicon-info-sign"></span> Helpful Hint</h3>05. </div>06. <div class="panel-body">07. <div class="row">08. <div class="col-md-12">09. #=target.data('title')#10. </div>11. </div>12. </div>13. 14. </div>15. 16. </script>1.function tooltipReset(e) {2. 3. var contentpanel = $("#tooltipContent").first(".col-md-12").width();4. e.sender.refresh();5. e.sender.popup.wrapper.width(contentpanel);6. 7.}01..k-tooltip02.{03. 04.}05. 06..k-tooltip, .k-tooltip-content07.{08. color:#2a2828; 09. background:none !important;10. background-color:transparent !important;11. border:none !important;12. 13.}14. 15. 16..k-callout, .k-callout-w{17. border:none !important;18.}@(Html.Kendo().Grid<Communications.Communication>() .Name("grid") .Columns(columns => { columns.Bound(c => c.Protocol).Title(ResourceStrings.Protocol); columns.Bound(c => c.Date).ClientTemplate(@DateTimeHtmlHelper.GetParsedDate("Date")).Title(ResourceStrings.Date); columns.Bound(c => c.CodiceRapporto).Title(ResourceStrings.CodeDossier); columns.Bound(c => c.Type).Title(ResourceStrings.Type); columns.Command(commadnAction => commadnAction.Custom("download").Text("Download").Click("Download")); }) .Resizable(resize => resize.Columns(true)) .Scrollable(scr => scr.Enabled(true)) .Filterable() .Sortable() .DataSource(dataSource => dataSource .Ajax() ) .ToolBar(toolbar => { toolbar.Template(@<text> <div class="toolbar"> <label>Data da </label> @Html.Kendo().DatePicker().Name("dateFrom").Value(@Model.DateFrom) <label> Data a </label> @Html.Kendo().DatePicker().Name("dateTo").Value(@Model.DateTo) @Html.Kendo().Button().Name("btnCarica").Content(ResourceStrings.BtnLoadData).Events(events => { events.Click("LoadData"); }) </div> </text>); } ))<script> function Download(e) { var dataItem = this.dataItem($(e.currentTarget).closest("tr")); var content ="@Html.ActionLink("CommunicationsReport", "Reports", new { protocol = 123 })" alert(content); }</script>var content ="@Html.ActionLink("CommunicationsReport", "Reports", new { protocol = 123 })"
jQuery(function(){jQuery("#datepicker").kendoDatePicker({"format":"M/d/yyyy","min":new Date(1900,0,1,0,0,0,0),"max":new Date(2099,11,31,0,0,0,0)});});

@ModelType EditUserViewModel@Code ViewData("Title") = "UserRoles"End Code<h2>Roles for user: @Model.UserName</h2><hr />@Using (Html.BeginForm("UserRoles", "Account", FormMethod.Post, New With {.encType = "multipart/form-data", .name = "myform"}))@Html.AntiForgeryToken() @(Html.Kendo().Grid(Of SelectRoleEditorViewModel).Name("Roles") _ .Columns(Sub(c) c.Bound(Function(x) x.Selected) c.Bound(Function(x) x.RoleName) c.Bound(Function(x) x.Description) End Sub) _ .Editable(Function(editable) editable.Mode(GridEditMode.InLine)) _ .DataSource(Function(dataSource) dataSource _ .Server() _ .Model(Sub(model) model.Id(Function(p) p.RoleName)) _ .Read(Function(read) read.Action("UserRolesRead", "Account", New With {.id = Model.id}))) _ .Pageable())Public Function UserRolesRead(req As DataSourceRequest, id As String) As ActionResult Dim Db = New ApplicationDbContext() Dim user = Db.Users.First(Function(u) u.Id = id) Dim model As New List(Of SelectRoleEditorViewModel)() model = user.Roles Return View(model)End Function

Grid in inline edit mode.
@(Html.Kendo().Grid<Security.UserViewModel>() .Name("Users") .Columns(columns => { columns.Bound(c => c.UserId).Hidden(); columns.Bound(c => c.UserName).Title("Логин"); columns.Bound(c => c.FirstName).Title("Имя"); columns.Bound(c => c.LastName).Title("Фамилия"); columns.Bound(c => c.Email).Title("E-mail"); columns.ForeignKey(c => c.FirstRoleId, (System.Collections.IEnumerable)ViewData["roles"], "RoleID", "RoleName").Title("Роль"); columns.Command(command => { command.Edit(); command.Destroy(); }); }) .ToolBar(toolBar => toolBar.Create()) .Editable(editing => editing.Mode(GridEditMode.InLine)) .Pageable() .Sortable() .Scrollable() .DataSource(dataSource => dataSource .Ajax() .Events(events => events.Error("error")) .Model(model => { model.Id(u => u.UserId); }) .Create(update => update.Action("Create", "Users")) .Read(read => read.Action("Read", "Users")) .Update(update => update.Action("Update", "Users")) .Destroy(delete => delete.Action("Delete", "Users")) ))When I add new row grid sends to the server blank "FirstRoleName" instead of "FirstRoleId". When I update the row all works fine.
Made temporary workaround:
$(function () { var grid = $("#Users").data("kendoGrid"); // bind to the save event grid.bind("save", function (e) { if (e.model.isNew()) { e.model.FirstRoleId = $("input#FirstRoleId").val(); } });});I think it is a bug.