我是使用MVC和剑道的新手。ASP.NET MVC和Kendo Grid可排序
我有这样的控制器:
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);
})
- 首先,我需要通过一个名为 “OrderPos” 的模范生了属性对列表进行排序。
- 我想要拖放行来更改顺序并自动更新数据库。所以当我拖放一行时,它会在数据库中查找字段“OrderPos”。
我已经看到了kendo可排序的小部件,但我不知道如何混合所有东西来使这个工作。 以下是演示:http://demos.telerik.com/kendo-ui/sortable/integration-grid
谢谢。
您是否具有拖放功能? – CSharper 2014-10-10 16:01:24
您必须捕获“drop”完成后触发的事件,在该事件中您可以触发Ajax调用并发送网格数据。因此,您的控制器将把GridView绑定到YourModel类的列表,并且应该根据它们在视图中的外观来对它们进行排序。这将是最难的部分。我会让你弄清楚如何从那里更新数据库:)发布Kendo Grids数据的例子很多。如果你真的很挣扎,我会告诉你如何发布。 – CSharper 2014-10-10 16:14:50
请给我一个你建议的例子吗? – 2014-10-12 05:39:59