表单与表格是信息化系统里很常见的控件,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. 工作中用到的安卓日志相关命令(logcat)

    1. 打印安卓日志,在cmd中使用adb shell logcat:在adb shell下直接打logcat 2. 如果不想打印占用终端,则加个&号,即logcat & 3. 如果想把 ...

  2. linq本质扩展方法+lambda表达式

    string[] names = { "aa","bb","cc","dd"}; /* IEnumerable<s ...

  3. java中的读/写锁

    读写锁接口:ReadWriteLock,它的具体实现类为:ReentrantReadWriteLock 使用场景: 对于一个资源,读读能共存,读写不能共存,写写不能共存. 锁降级:从写锁变成读锁: 锁 ...

  4. 【Luogu】P2485计算器(快速幂,exgcd和Bsgs模板)

    题目链接 题目描述非常直接,要求你用快速幂解决第一问,exgcd解决第二问,bsgs解决第三问. emmmm于是现学bsgs 第二问让求最小整数解好烦啊…… 假设我们要求得方程$ax+by=c(mod ...

  5. get****Context各个方法分析

    1 getApplicationContext分析 该方法为contextImpl类的方法,返回一个ApplicationContext.方法代码为: public Context getApplic ...

  6. django学习——通过get_FOO_display 查找模型中的choice值

    在django的models.py 中,我们定义了一些choices的元组,类似一些字典值,一般都是下拉框或者单多选框,例如 0对应男 1对应女等. class Area(models.Model): ...

  7. pat 团体天梯赛 L2-012. 关于堆的判断

    L2-012. 关于堆的判断 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 将一系列给定数字顺序插入一个初始为空的小顶堆H[] ...

  8. pat 甲级 团体天梯 L3-004. 肿瘤诊断

    L3-004. 肿瘤诊断 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 在诊断肿瘤疾病时,计算肿瘤体积是很重要的一环.给定病灶 ...

  9. javascript实现可拖动DIV层

    原文发布时间为:2009-05-04 -- 来源于本人的百度文章 [由搬家工具导入] 注意以下红色部分是关键.如果不使用      document.documentElement,而使用docume ...

  10. Linux firmware 加载【转】

    转自:http://blog.chinaunix.net/uid-22028680-id-3157922.html 1.request_firmware在内核使用,需要文件系统支持,就是说,启动的时候 ...