• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Asp.netmvcKendoUIGrid的使用(二)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

  上一篇文章对Kendo UI做了一些简单的介绍以及基本环境,这篇文章来介绍一下Grid的使用

先上效果图:

要实现这个效果在Controller在要先导入Kendo.Mvc.UI,Kendo.Mvc.Extensions两个命名空间然后实现数据的加载:

 1         [HttpPost]
 2         public ActionResult PersonalList_Read(DataSourceRequest request)
 3         {
 4             IList<PersonalInfoModel> listmodel = new List<PersonalInfoModel>();
 5             for(int i=0;i<50;i++)
 6             {
 7                 listmodel.Add(new PersonalInfoModel { 
 8                     Id=i,
 9                     Name="Summit"+i,
10                     LocalArea="安徽省合肥市"
11                 });
12             }
13             //request.Page = 1;
14             DataSourceResult result =listmodel.ToDataSourceResult(request);
15             result.Total = listmodel.Count();
16             return Json(result);
17         }

这里的DataSourceRequest是Kendo封装的方法接收前台传来的基本数据,DataSourceResult是把model的数据转换为Kendo所能识别的的格式然后以Json的形式返回

在View中先@using Kendo.Mvc.UI后才能使用Kendo的HtmlHelper,代码如下:

 

 1     @(Html.Kendo().Grid<PersonalInfoModel>()
 2         .Name("PersonalListGrid")
 3         .Columns(columns =>
 4         {
 5             columns.Bound(c => c.Name).Title("名称").Width(80);
 6             columns.Bound(c => c.LocalArea).Title("所在地");
 7         })
 8          .HtmlAttributes(new {style="width:700px;"})
 9          .Editable(e => e.Mode(GridEditMode.InLine))
10          .Scrollable(s => s.Enabled(false))
11          .Sortable(sort => sort.Enabled(false))
12          .Pageable(page => page
13                 .Refresh(true)
14                 .ButtonCount(5)
15                 .PageSizes(new[] { 10, 20, 30, 50 })
16                 .Messages(message=>message.ItemsPerPage("每页显示数目"))
17          )
18          .DataSource(datasource => datasource
19              .Ajax()
20              .PageSize(10)
21              .Model(model => model.Id(c => c.Id))
22              .Model(model => model.Field(c => c.Id).Editable(false))
23              .Read(read => read.Action("PersonalList_Read", "Home"))
24 
25          )
26     )

 

先要指定Grid所使用的基本模型为PersonalInfoModel,这里Grid的一些基本属性基本上都已列出,挑个主要的讲就是

.Model(model => model.Id(c => c.Id))

.Model(model => model.Field(c => c.Id).Editable(false))

.Read(read => read.Action("PersonalList_Read", "Home"))

这三个中第一个指定了主Id,这样对执行一些方法时可以针对性的行操作同时这个Id是不可被编辑的,如果这两个没有的话,更新之类的方法会出现各种各样的奇怪事,第三个不用说大家也知道是读取数据的作用

 (使用Gird一定要指定Id,它是唯一标示一行数据的key,如果你发现使用编辑功能时怎么编辑都不会走到后台或是点击编辑不做处理点击取消会发现数据减少一行,那么你要检查一下你的Id是否有指定)

配置正确后应该可以正确显示...

 

今天就到写到这里,有了新想法我会继续更新.

 

 

注:
本博客文章由本人原创笔记或转载(转载会有说明),目的是分享知识,做个笔记.
欢迎转载,但转载请注明来自(浮云也是种寂寞) ,并包含相关链接。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
使用ASP.NETAjax和WebService动态加载用户控件发布时间:2022-07-10
下一篇:
ASP.NETCore:ASP.NETCore程序使用Docker部署发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap