ASP.Net MVC 3,Kendo UI Web,Kendo网格控制。
我的主数据源通过外键绑定使用外部数据源:
.Columns(columns =>
{
columns.ForeignKey(p => p.FK_ID, (System.Collections.IEnumerable)ViewData["things"], "ID", "NAME");
...
在视图模式下,绑定按预期工作,我看到NAME
属性受“FK_ID - ID”关系约束。
然而,当我进入编辑模式时,会发生奇怪的事情:
- 列被禁用(即该字段没有任何编辑器)
在弹出模式下 - 有一个编辑框编辑器,而不是组合框,所以我必须手动输入它,尽管绑定事实
在Kendo网站上,演示显示,如果外键处于编辑模式,则会显示组合框,并且选择仅限于外部数据源(非常常见)。
那么我还应该做什么来显示组合框并仅从那里显示的值中选择?
答案 0 :(得分:3)
请问您是否有必要的外键编辑器?它应位于Views / Shared / EditorTemplates文件夹下,其名称为 GridForeignKey.cshtml (如果使用ASPX视图引擎,则为.aspx)
如果不存在,您可以使用上面的信息手动添加。编辑器的内容是:
@( Html.Kendo().DropDownList()
.Name(ViewData.TemplateInfo.GetFullHtmlFieldName(""))
.BindTo((SelectList)ViewData[ViewData.TemplateInfo.GetFullHtmlFieldName("") + "_Data"]))