表单与表格是信息化系统里很常见的控件,EasyMvc提供了简单的数据绑定方式(基于Json),看下面的示例:

 准备的接口地址代码如下:(该接口适用以下所有例子)

        public IActionResult TableData(int page, int limit, string field = "", string sort = "")
{
for (var i = 0; i < 1000; i++)
{
var item = new Person
{
UserName = "mxd" + i,
Birthday = DateTime.Now.AddDays(i),
Comment = "我们是备注..."
};
datas.Add(item);
} var result = LinqHelper.SortingAndPaging(datas.AsQueryable(), field, sort, page, limit);
return Json(new { code = 0, msg = "", count = datas.Count, data = result });
}

1、简单的View使用方法如下:

@(Html.Q().DataGrid().AjaxRead("/DataGrid/TableData").Columns<Person>())

显示效果如下:

2、如果我们需要显示某几个字段,可以采取如下方式:

@(Html.Q().DataGrid().AjaxRead("/DataGrid/TableData").Columns<Person>(
cols =>
{
cols.Bound(n => n.UserName);
cols.Bound(m => m.Birthday);
cols.Bound(n => n.Comment);
}
))

效果如下:

3、列可以定义模板,如下所示:

@(Html.Q().DataGrid().AjaxRead("/DataGrid/TableData").Columns<Person>(
cols =>
{
cols.Bound(n => n.UserName).TempletId("tp");
cols.Bound(m => m.Birthday);
cols.Bound(n => n.Comment);
}
)) @Html.Q().StartTemplate(new TemplateModel() { Id = "tp" }) @Html.Q().Button().ClickClientEvent("demo").Text("{{d.userName}}").SizeXSmall()
<script>function demo(data) { layer.msg("{{d.userName}}"); }</script> @Html.Q().EndTemplate()

效果如下所示:

4、表格还可以实现列排序,行点击,列选中等操作,请参照在线演示的示例代码,最后参考下表格的样式美化(会涉及一些CSS,没关系,需要的时候COPY参考修改就可以)

效果如下:


总结:表格应该是目前最复杂的控件,掌握了表格,基本就掌握了EasyMvc,请根据实际情况参考示例实现。

更多使用示例请浏览在线示例:http://core.zwc.cn

EasyMvc入门教程-高级控件说明(20)表格控件的更多相关文章

  1. EasyMvc入门教程-高级控件说明(14)列布局控件

    想起刚做网页时候,看着这么大的屏幕,一直在 想该如何布局呢,后来经过Table布局,Div布局,Border布局,列式布局. 目前EasyMvc主要支持12列的列式布局(手机兼容性好).请看下面的例子 ...

  2. EasyMvc入门教程-高级控件说明(19)表单控件

    我们开发的系统,主要的一个功能就是采集界面数据,传回到服务器,比如:录入学生信息,这时候就需要表单. EasyMvc提供了如下界面控件,如下图所示:(控件+布局) EasyMvc实现了基于模型的绑定, ...

  3. EasyMvc入门教程-高级控件说明(15)方位布局控件

    现在很多管理后台都流行全屏切割的布局,大体结构如下图所示: 大家注意到没,整个布局是五个部分组成:“东西南北中”,EasyMvc对应的实现的代码为: @(Html.Q().Layout().TextC ...

  4. EasyMvc入门教程-高级控件说明(16)信息框控件

    网页开发的时候,会经常向用户显示一些信息,比如执行结果,注意事项等,下面展示一种最简单的信息提示: 代码如下: @Html.Q().Msg().Text("初始化信息").Auto ...

  5. EasyMvc入门教程-高级控件说明(17)对话框控件

    上一节我们说到的信息框比较简单,如果我们想简单实现用户用户交互,比如常用的锁屏界面,应该如何实现呢?首先看效果: 当用户输入"mxd",后,界面显示如下: 以上效果的实现代码为: ...

  6. EasyMvc入门教程-高级控件说明(18)弹出框控件

    前面两节介绍了信息框与对话框,实际开发中如果我们遇到更复杂的要求,比如要求在弹出框里显示另外的网址,如下所示: 实现代码如下: @Html.Q().Popup().Text("我可以嵌套网页 ...

  7. EasyMvc入门教程

    EasyMvc 希望实现的目标:模块化,快速简单化,满足80%的常见需求.基于.Net Core 2.0.5开发.开发环境:VS2017,运行环境支持Window/Linux. 相关链接: 演示地址: ...

  8. QRowTable表格控件(二)-红涨绿跌

    目录 一.开心一刻 二.概述 三.效果展示 四.任务需求 五.指定列排序 六.排序 七.列对其方式 八.相关文章 原文链接:QRowTable表格控件(二)-红涨绿跌 一.开心一刻 一天,五娃和六娃去 ...

  9. QRowTable表格控件(三)-效率优化之-合理使用QStandardItem

    目录 一.开心一刻 二.概述 三.效果展示 四.QStandardItem 1.QStandardItem是什么鬼 2.性能分析 3.QStandardItem使用上的坑 五.相关文章 原文链接:QR ...

随机推荐

  1. IOS开发学习笔记020-练习总结

    自己做了一遍,现在再复习一下,总结一下. 最终效果如下         1.新建一个工程Single View Application 总体如下 不过要关闭自动布局功能 这是按下设置按钮显示的界面默认 ...

  2. bugku 普通的二维码

    记录下对进制转换实现的重新思考. 扫描二维码扫到了一句垃圾话. 拖到winhex里面. 一开始以为是十进制直接转ascii,发现错误. 后来发现,最大数是7,八进制转换吧. 我是打算用python的l ...

  3. python - 接口自动化测试 - GetLog - 日志类封装

    # -*- coding:utf-8 -*- ''' @project: ApiAutoTest @author: Jimmy @file: get_logger.py @ide: PyCharm C ...

  4. zookeeper Zookeeper

    这是ZooKeeper客户端库的主要类.使用一个ZooKeeper服务,应用程序必须首先实例化ZooKeeper类的对象.所有的迭代都将通过调用ZooKeeper类的方法来完成.除非另有说明,该类的方 ...

  5. JS获取屏幕宽度

    document.write("屏幕分辨率为:"+screen.width+"*"+screen.height+"<br />" ...

  6. html5中checkbox的选中状态的设置与获取

    获取checkbox是否选中: $("#checkbox").is(":checked"); 获得的值为true或false. 设置checkbox是否选中: ...

  7. 【bzoj2132】圈地计划 网络流最小割

    题目描述 最近房地产商GDOI(Group of Dumbbells Or Idiots)从NOI(Nuts Old Idiots)手中得到了一块开发土地.据了解,这块土地是一块矩形的区域,可以纵横划 ...

  8. iOS指向函数的指针和block

      一:block基础知识 block基础知识 基本概念:block是用来保存一段代码的:^:是block得标志  好比*:是指针的标志 特点:1:保存一段代码: 2:可以有参数和返回值: 3:可以作 ...

  9. CCC2019游记

    好吧其实是清华游记,$CCC2019$ 在中国只有北京和天津举办,要选去加拿大的人很少,估计是最近两国关系有点紧张的缘故吧 但实际上是某些已经被清华钦点的人去预览一下他们未来的栖息所 $13:30$ ...

  10. Long.ValueOf("String") Long.parseLong("String") 区别 看JAVA包装类的封箱与拆箱

    IP地址类型转换原理: 将一个点分十进制IP地址字符串转换成32位数字表示的IP地址(网络字节顺序). 将一个32位数字表示的IP地址转换成点分十进制IP地址字符串. 1.Long.ParseLong ...