gpt4 book ai didi

jquery - Kendo 下拉列表显示在网格中选择后的值,并使用 incell 编辑、MVC

转载 作者:行者123 更新时间:2023-12-01 05:43:57 25 4
gpt4 key购买 nike

如果有任何帮助,我将不胜感激。我的模型:

 public class AddressModel
{
public int AddressID { get; set; }
public string Type { get; set; }
public virtual AddressType AddressType { get; set; }
}
public class AddressType
{
public string Code{get; set;}
public string Title{get; set;}
}

我有一个带有 incell 编辑功能的网格:

@(Html.Kendo().Grid<AddressModel>(Model.Addresses)
.Name("grid")
.Columns(columns =>
{
columns.Bound(p => p.Type)
.EditorTemplateName("AddressTypes");
//.ClientTemplate("#=AddressType.Title#"); //not working

})
.ToolBar(toolBar =>
{
toolBar.Create();
})
.Editable(editable => editable.Mode(GridEditMode.InCell)) =
.DataSource(dataSource => dataSource
.Ajax()
.Model(model =>
{
model.Id(p => p.AddressID);
model.Field(p => p.AddressID).Editable(false);
}))

编辑器模板:

@Html.Kendo().DropDownList().Name("Type").BindTo(new SelectList(context.AddressTypes, "Code", "Title"))

问题是当我选择某个项目时,下拉列表显示所选值而不是文本。我需要显示标题。我该如何修复它?

最佳答案

根据剑道论坛上的描述。

  1. 编辑器名称必须与网格模型中的属性名称匹配
  2. 必须绑定(bind) ViewBag、DataSource 或静态

    public class AddressModel
    {

    public int AddressID { get; set; }
    public string Type { get; set; }
    public AddressTypeModel AddressType { get; set;}
    }
    public class AddressTypeModel
    {
    public string Code{get; set;}
    public string Title{get; set;}
    }

    @(Html.Kendo().Grid<AddressModel>(Model.Addresses)
    .Name("grid")
    .Columns(columns =>
    {
    columns.Bound(p => p.Type)
    .EditorTemplateName("AddressTypesListEditor");
    .ClientTemplate("#=AddressType.Title#"); //should work

    })
    .ToolBar(toolBar =>
    {
    toolBar.Create();
    })
    .Editable(editable => editable.Mode(GridEditMode.InCell)) =
    .DataSource(dataSource => dataSource
    .Ajax()
    .Model(model =>
    {
    model.Id(p => p.AddressID);
    model.Field(p => p.AddressID).Editable(false);
    }))

编辑器模板:

@Html.Kendo().DropDownList()
.Name("AddressType")// Name of the widget should be the same the property
.HtmlAttributes( new {@class=".k-dropdown-wrap-custom"})
.Events(e => { e.Select("AddressTypeSelected");})
.BindTo(ViewBag.AddressTypeList)

服务器端:

   List<AddressTypeModel> list=   _unitOfWork.AdminRepository.GetAddressTypes().Select(t =>
new AddressTypeModel
{
Code= t.Code.toString(),
FundName = t.Title.toSTring()
}).ToList();


ViewBag.AddressTypeList = list;

关于jquery - Kendo 下拉列表显示在网格中选择后的值,并使用 incell 编辑、MVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28735269/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com