gpt4 book ai didi

c# - Kendo UI 将 DropDownList 添加到 Grid (MVC)

转载 作者:太空宇宙 更新时间:2023-11-03 16:07:34 24 4
gpt4 key购买 nike

我正在绑定(bind)到网格类(UserId、FirstName、LastName、Choice)。有谁知道如何将这段代码放在 MVC 4 中 Kendo Grid 的列(选择)中:

@(Html.Kendo().DropDownList()
.Name("Test")
.DataTextField("Text")
.DataValueField("Value")
.Events(e => e.Change("change"))
.BindTo(new List<SelectListItem>()
{
new SelectListItem()
{
Text = "Option1",
Value = "1"
},
new SelectListItem()
{
Text = "Option2",
Value = "2"
}
}))
<script>
function change() {
var value = $("#Choice").val();
}
</script>

....

columns.Bound(p=> p.FirsName);
columns.Bound(p => p.LastName);
//How to Bind Choice???

我还需要后端代码中的文本(“Option1”或“Option2”)。有什么解决办法吗?

已编辑

我完全按照他们说的做了:

查看:

 columns.Bound(p => p.Choice).ClientTemplate("#=Choice#");

Controller :

public ActionResult Index()
{
PopulateCategories();
return View();
}

.....

 private void PopulateCategories()
{
var dataContext = new TestDB();
var categories = dataContext.Peoples
.Select(c => new People()
{
ChoiceID = c.ChoiceID,
Choice = c.Choice
})
.OrderBy(e => e.Choice);
ViewData["categories"] = categories;
ViewData["defaultCategory"] = categories.First();
}

但这行不通...

最佳答案

你只需要看看他们提供的文档:http://demos.kendoui.com/web/grid/editing-custom.html

这是一个自定义网格,因此也可能涉及一些 JS 更改。您从您的模型进行绑定(bind),kendo.js 将负责其余的工作。

@(Html.Kendo().Grid<Kendo.Mvc.Examples.Models.ClientProductViewModel>()
.Name("grid")
.Columns(columns =>
{
columns.Bound(p => p.ProductName);
columns.Bound(p => p.Category).ClientTemplate("#=Category.CategoryName#").Width(160);
columns.Bound(p => p.UnitPrice).Width(120);
columns.Command(command => command.Destroy()).Width(90);
})
.ToolBar(toolBar =>
{
toolBar.Create();
toolBar.Save();
})
.Editable(editable => editable.Mode(GridEditMode.InCell))
.Pageable()
.Sortable()
.Scrollable()
.HtmlAttributes(new { style = "height:430px;" })
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.ServerOperation(false)
.Events(events => events.Error("error_handler"))
.Model(model =>
{
model.Id(p => p.ProductID);
model.Field(p => p.ProductID).Editable(false);
model.Field(p => p.Category).DefaultValue(
ViewData["defaultCategory"] as Kendo.Mvc.Examples.Models.ClientCategoryViewModel);
})
.PageSize(20)
.Read(read => read.Action("EditingCustom_Read", "Grid"))
.Create(create => create.Action("EditingCustom_Create", "Grid"))
.Update(update => update.Action("EditingCustom_Update", "Grid"))
.Destroy(destroy => destroy.Action("EditingCustom_Destroy", "Grid"))
)
)

无论您在做什么,您的 csHTML 文件都需要将输入和回传绑定(bind)到触发器上。

关于c# - Kendo UI 将 DropDownList 添加到 Grid (MVC),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18768465/

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