ASP.NET MVC& Kendo Grid可排序

时间:2014-10-10 07:06:24

标签: asp.net-mvc kendo-ui kendo-grid kendo-asp.net-mvc

我是新手使用MVC和剑道。

我有这个控制器:

    public ActionResult Index()
    {
        db.Configuration.ProxyCreationEnabled = false;
        return View(db.students.ToList());
    }

视图有这个:

@model IEnumerable<MVC_Test1.Models.student>

@{
ViewBag.Title = "Index";
}

<h2>Index</h2>

@(Html.Kendo().Grid(Model)
.Name("Grid")
.Pageable(pager => pager
    .PageSizes(new[] { 2, 3, 4 })
    .ButtonCount(5)) 
.Sortable()
.Selectable()
.DataSource(dataSource => dataSource
    .Ajax()
    .PageSize(2)
    .ServerOperation(false)
 )
.Columns(columns =>
{
    columns.Bound(p => p.FirstName).Title("Name");
    columns.Bound(p => p.MiddleName).Title("Middle");
    columns.Bound(p => p.LastName).Title("Lastname");
    columns.Bound(p => p.EnrollmentDate).Format("{0:" + System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern + "}").Title("Created");
    columns.Command(commands =>
    {
        commands.Custom("Options");
    }).Title("Options").Width(200);
})
  • 首先,我需要通过Model学生名为“OrderPos”的属性来订购列表。
  • 我想拖放行来更改顺序并自动更新数据库。因此,当我拖放一行时,它会在数据库中查找“OrderPos”字段。

我已经看到了kendo可排序的小部件,但我不知道如何混合一切以使其工作。 以下是演示:http://demos.telerik.com/kendo-ui/sortable/integration-grid

谢谢。

3 个答案:

答案 0 :(得分:1)

你有没有看过他们的例子:http://demos.telerik.com/aspnet-mvc/sortable/integration-grid

他们使用网格+ sortable与MVC助手一起工作。

答案 1 :(得分:1)

在某些事件上将网格发布到服务器

var gridData = $("#ProposalGridX").data("kendoGrid");

            $.ajax({
                url: "/GridPost/PersonPost",
                type: 'POST',
                data: JSON.stringify(gridData.dataSource.view()),
                dataType: 'json',
                contentType: 'application/json',
                success: function (data) {

                }
            });


        [HttpPost]
        public JsonResult PersonPost(List<QPM.Models.PortfolioViewModel> model)
        {
            //model will contain gridview
            //update OrderPos
        }

答案 2 :(得分:0)

您希望处理Sortable小部件的更改事件,并在其中执行ajax发布以更新服务器端的值。

有关详细信息,请参阅活动演示:http://demos.telerik.com/aspnet-mvc/sortable/events