【问题标题】:Sort Telerik RadGrid for ASP.NET MVC为 ASP.NET MVC 排序 Telerik RadGrid
【发布时间】:2011-05-18 15:16:35
【问题描述】:
Telerik 的 RadGrid 的排序方式是什么?我不想添加表单服务器标签,也不想像我见过的示例那样使用带有代码的用户控件(因为我认为这些不是真正的 MVC 解决方案,对吗?)。
请指出一个示例或发布示例代码...
提前致谢。
【问题讨论】:
标签:
asp.net-mvc
telerik
radgrid
【解决方案2】:
我正在使用 ASP.NET MVC 开源 Telerik 控件。这是我如何使用排序的示例。它适用于服务器控制或 Ajax,但我发现 Ajax 网格在创建循环引用错误方面更加敏感。
这个 Ajax 示例按两列排序。服务器绑定的逻辑是一样的。
@(Html.Telerik().Grid(Model)
.Name("Grid")
.DataKeys(keys => keys.Add(c => c.category_id ))
.DataBinding(dataBinding => dataBinding.Ajax()
.Select("AjaxGridSelect", "CategoryTree")
.Insert("GridInsert", "CategoryTree", new { GridEditMode.PopUp, GridButtonType.ImageAndText })
.Update("GridUpdate", "CategoryTree", new { GridEditMode.InLine, GridButtonType.ImageAndText })
.Delete("GridDelete", "CategoryTree", new { GridEditMode.InLine, GridButtonType.ImageAndText }))
.Columns(columns =>
{
columns.Bound(p => p.category_name).Width(150);
columns.Bound(p => p.status_cd).Width(100);
columns.Command(commands =>
{
commands.Edit().ButtonType(GridButtonType.ImageAndText);
commands.Delete().ButtonType(GridButtonType.ImageAndText);
}).Width(180).Title("Commands");
})
.Editable(editing => editing.Mode(GridEditMode.InLine))
.Pageable(paging => paging.PageSize(50)
.Style(GridPagerStyles.NextPreviousAndNumeric)
.Position(GridPagerPosition.Bottom))
.Sortable(o => o.OrderBy(sortcol =>
{
sortcol.Add(a => a.category_name);
sortcol.Add(a => a.add_date);
})
.Filterable()
.Groupable()
.Selectable())