AGu*_*ald 5 c# ajax asp.net-mvc partial-views kendo-asp.net-mvc
我有一个启用了Ajax的kendo网格,该网格带有一个客户端模板,该模板显示行绑定到的模型中的数据。(由于ajax,使用columns.Template似乎是不可能的。)
@(Html.Kendo().Grid<Model>()
.Columns(columns =>
{
columns.Bound(x => x.SubModel).ClientTemplate("bla #= SomePropertyOfSubModel # bla")
})
.DataSource(dataSource => dataSource.Ajax())
Run Code Online (Sandbox Code Playgroud)
这基本上可以工作,但是我对结果不满意。例如,我在使剑道控件在模板中工作时遇到问题。我宁愿将部分视图挂在客户端模板中,但没有成功。我最远的是
columns.Bound(x => x.SubModel).ClientTemplate(Html.PartialView("view", //??) //how to bind to SubModel?
.ToHtmlString())
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏。
我认为你需要.ToClientTemplate()
在你的剑道控制模板中,
view.cshtml
@(Html.Kendo().NumericTextBox()
.Name("NameHere")
.Min(0)
.HtmlAttributes(new { style = "width:200px" })
.ToClientTemplate()
)
Run Code Online (Sandbox Code Playgroud)
进而,
columns.Bound(c => c.SubModel).ClientTemplate(Html.Partial("view").ToHtmlString());
Run Code Online (Sandbox Code Playgroud)
编辑:
如果你想将模型绑定到局部视图,你可以这样做
columns.Bound(c => c.SubModel.Property).Template(@<text>Html.Partial("view", item.SubModel)</text>);
Run Code Online (Sandbox Code Playgroud)