C# ForeignKey显示文本框而不是dropdownlist
这是我的问题: 我有两个类似代码的项目在kendogrid中显示dropdownlist。在第一个项目中一切正常,在第二个项目中,我得到了一个文本框,而不是下拉列表。我在telerik周围搜索过,但没有任何东西能解决我的问题。我认为我的项目中缺少了一些东西来使这项工作顺利进行。或者有什么东西挡住了它!但是找不到。。希望你能帮助我 这是我的表格:C# ForeignKey显示文本框而不是dropdownlist,c#,asp.net,telerik,kendo-grid,C#,Asp.net,Telerik,Kendo Grid,这是我的问题: 我有两个类似代码的项目在kendogrid中显示dropdownlist。在第一个项目中一切正常,在第二个项目中,我得到了一个文本框,而不是下拉列表。我在telerik周围搜索过,但没有任何东西能解决我的问题。我认为我的项目中缺少了一些东西来使这项工作顺利进行。或者有什么东西挡住了它!但是找不到。。希望你能帮助我 这是我的表格: @(Html.Kendo().Grid<DisplayUniteMultiple>()
@(Html.Kendo().Grid<DisplayUniteMultiple>()
.Name("GridDisplayUniteMultiple")
.ToolBar(t => t.Create().Text("Ajouter un couple Valeur/ Unite"))
.Columns(columns =>
{
columns.Bound(c => c.id).Hidden(true);
columns.Bound(c => c.Valeur);
columns.ForeignKey(c => c.Unite, unitesDeConversion, "Value", "Text").Title("Unité").Width(200);
})
.Editable(editable => editable.Mode(GridEditMode.InCell).Enabled(true))
.Events(e => e.Edit("onGridChange"))
.DataSource(datasource => datasource
.Ajax()
.Update(builder => builder.Url(""))
.PageSize(50)
.Batch(false)
.Model(model =>
{
model.Id(uniteMultiple => uniteMultiple.id);
model.Field(uniteMultiple => uniteMultiple.Valeur);
model.Field(uniteMultiple => uniteMultiple.Unite);
})
.ServerOperation(true)
))
@(Html.Kendo().Grid())
.Name(“GridDisplayUniteMultiple”)
.ToolBar(t=>t.Create().Text(“ajun-couple-Valeur/Unite”))
.列(列=>
{
columns.Bound(c=>c.id).Hidden(true);
columns.Bound(c=>c.Valeur);
列。外键(c=>c.Unite,unitesDeConversion,“Value”,“Text”)。标题(“Unité”)。宽度(200);
})
.Editable(Editable=>Editable.Mode(GridEditMode.InCell).Enabled(true))
.Events(e=>e.Edit(“onGridChange”))
.DataSource(DataSource=>DataSource
.Ajax()
.Update(builder=>builder.Url(“”)
.页面大小(50)
.批(假)
.Model(Model=>
{
model.Id(uniteMultiple=>uniteMultiple.Id);
字段(uniteMultiple=>uniteMultiple.Valeur);
字段(uniteMultiple=>uniteMultiple.Unite);
})
.ServerOperation(真)
))
您可能无法在项目中添加编辑器模板
在./Views/Shared/
目录中创建名为EditorTemplates
的新文件夹(如果还没有)。然后在该文件夹中创建名为GridForeignKey.cshtml
的新文件,并将下面的代码复制到其中,保存并重试
@model object
@(
Html.Kendo().DropDownListFor(m => m)
.BindTo((SelectList)ViewData[ViewData.TemplateInfo.GetFullHtmlFieldName("") + "_Data"])
)
您可能无法在项目中添加编辑器模板 在
./Views/Shared/
目录中创建名为EditorTemplates
的新文件夹(如果还没有)。然后在该文件夹中创建名为GridForeignKey.cshtml
的新文件,并将下面的代码复制到其中,保存并重试
@model object
@(
Html.Kendo().DropDownListFor(m => m)
.BindTo((SelectList)ViewData[ViewData.TemplateInfo.GetFullHtmlFieldName("") + "_Data"])
)
我会尝试这样做,但这很奇怪,因为在它工作的地方我也没有那个文件夹和那个文件。我在创建视图时遇到以下错误:错误CS1061'HtmlHelper'不包含'Kendo'的定义,并且找不到接受第一个'HtmlHelper'类型参数的扩展方法'Kendo'(是否缺少using指令或程序集引用?)在第一行中使用Kendo.Mvc.UI添加
@尽管如此,我还是想了解它在我的另一个项目中是如何工作的,因为我没有创建文件夹和file@ChristianPliso您可以尝试比较两个项目中的文件,如果它们运行在同一版本的剑道框架上其他项目。我将尝试此操作,但很奇怪,因为在它工作的项目中,我没有该文件夹和该文件。我在创建视图时遇到以下错误:错误CS1061“HtmlHelper”不包含“Kendo”的定义,并且找不到接受“HtmlHelper”类型的第一个参数的扩展方法“Kendo”(是否缺少using指令或程序集引用?)在第一行中使用Kendo.Mvc.UI添加@尽管如此,我还是想了解它在我的另一个项目中是如何工作的,因为我没有创建文件夹和file@ChristianPliso您可以尝试比较两个项目中的文件,如果它们运行在同一版本的剑道框架上其他项目。