RDIFramework.NET框架Web中datagrid与treegrid控件自动生成右键菜单与列标题右键菜单

简介:

 在实际应用中常可以看到数据展示控件有右键菜单的功能,对应的列标题也可以右键弹出快捷菜单设置指定列的显示与隐藏等功能。在我们的RDIFramework.NET Web框架中,只要是使用了EasyUI的DataGrid与TreeData控件我们已经做了扩展,所有datagrid与treegrid控件都自动拥有了列标题右键弹出快捷菜单设置指定列的显示与隐藏的功能。

  1、对于datagrid数据列表区域的右键弹出菜单只需要设置EasyUI的“onRowContextMenu”属性为:pageContextMenu.createDataGridContextMenu即可。

  2、对于treegrid数据列表区域的右键弹出菜单只需要设置EasyUI的“onContextMenu”属性为:pageContextMenu.createTreeGridContextMenu即可。

  后面会给出参考代码。下面就是两个右键菜单的展示效果。

 

  DataGrid参考Js代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
$( '#list' ).datagrid({
     url: actionURL +  'GridPageListJson' ,
     toolbar:  '#toolbar' ,
     title:  "产品列表" ,
     iconCls:  'icon16_table' ,
     width: winSize.width,
     height: winSize.height,
     nowrap:  false //折行
     rownumbers:  true //行号
     striped:  true //隔行变色
     idField:  'ID' , //主键
     singleSelect:  true //单选
     sortName:  'CREATEON' ,
     sortOrder:  'DESC' ,
     onRowContextMenu: pageContextMenu.createDataGridContextMenu,
     onDblClickRow: function (rowIndex, rowData){
         document.getElementById( 'a_edit' ).click();
     },
     frozenColumns: [[
         { field:  'ck' , checkbox:  true  },
         { title:  '产品编码' , field:  'PRODUCTCODE' , width: 150 },
         { title:  '产品名称' , field:  'PRODUCTNAME' , width: 300 }
     ]],
     columns: [[
         { title:  '主键' , field:  'ID' , width: 120, hidden:  true  },            
         { title:  '产品型号' , field:  'PRODUCTMODEL' , width: 150 },
         { title:  '产品规格' , field:  'PRODUCTSTANDARD' , width: 75 },
         { title:  '产品类别' , field:  'PRODUCTCATEGORY' , width: 70 },
         { title:  '产品单位' , field:  'PRODUCTUNIT' , width: 63 },
         { title:  '基准价' , field:  'MIDDLERATE' , width: 60 },
         { title:  '基准系数' , field:  'REFERENCECOEFFICIENT' , width: 60 },
         { title:  '单价' , field:  'PRODUCTPRICE' , width: 60 },
         { title:  '批发价' , field:  'WHOLESALEPRICE' , width: 60 },
         { title:  '促销价' , field:  'PROMOTIONPRICE' , width: 60 },
         { title:  '内部价' , field:  'INTERNALPRICE' , width: 60 },
         { title:  '特别价' , field:  'SPECIALPRICE' , width: 60 },
         {
             title:  '作废标志' , field:  'ENABLED' , width: 56,
             align:  'center' ,
             formatter:  function  (v, d, i) {
                 return  '<img src="../../Content/Styles/icon/bullet_'  + (v ? "tick.png " : " minus.png ") + '"  />';
             }
         },
         { title:  '产品描述' , field:  'PRODUCTDESCRIPTION' , width: 200 }
     ]],
     pagination:  true ,
     pageSize: 20,
     pageList: [20, 10, 30, 50],
     onLoadSuccess:  function  (data) {
         var  panel = $( this ).datagrid( 'getPanel' );
         var  tr = panel.find( 'div.datagrid-body tr' );
         refreshCellsStyle(tr);
         var  trHead = panel.find( 'div.datagrid-header tr' );
         trHead.each( function  () {
             var  tds = $( this ).children( 'td' );
             tds.each( function  () {
                 $( this ).find( 'span,div' ).css({  "font-size" "14px"  });
             });
         });
     }
});

  TreeGrid参考Js代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$( '#organizeGrid' ).treegrid({
     toolbar:  '#toolbar' ,          
     width: winsize.width,
     height: winsize.height,
     nowrap:  true ,
     rownumbers:  true ,
     animate:  true ,
     resizable:  true ,
     collapsible:  false ,
     onContextMenu: pageContextMenu.createTreeGridContextMenu,
     url:  '/FrameworkModules/OrganizeAdmin/GetOrganizeTreeJson' ,
     idField:  'Id' ,
     treeField:  'FullName' ,
     onDblClickRow: function (row){
         document.getElementById( 'btnEdit' ).click();
     },
     frozenColumns: [[
         { title:  '名称' , field:  'FullName' , width: 200 },
         { title:  '编码' , field:  'Code' , width: 100 }
     ]],
     columns: [[
         { title:  '简称' , field:  'ShortName' , width: 120 },
         { title:  '主负责人' , field:  'Manager' , width: 70, align:  'center'  },
         { title:  '电话' , field:  'OuterPhone' , width: 100, align:  'center'  },
         { title:  '传真' , field:  'Fax' , width: 100, align:  'center'  },
         { title:  '有效' , field:  'Enabled' , width: 50, align:  'center' , formatter: imgcheckbox },
         { title:  '排序' , field:  'SortCode' , width: 80, align:  'center'  },
         { title:  '备注' , field:  'Description' , width: 300 }
     ]]
});

  

     相关文章列表:
 RDIFramework.NET — 基于.NET的快速信息化系统开发框架 — 系列目录



本文转自yonghu86博客园博客,原文链接:http://www.cnblogs.com/huyong/p/5523276.html,如需转载请自行联系原作者

相关文章
|
10天前
|
消息中间件 开发框架 监控
NET任务调度框架Hangfire使用指南
Hangfire 是一个用于 .NET 应用程序的开源任务调度框架,支持长时间运行任务、定时任务等。通过简单的安装配置,即可将任务从主线程分离,提升应用性能。支持多种数据库,提供丰富的任务类型如立即执行、延迟执行和周期性任务,并有可视化管理界面 Hangfire Dashboard。还支持安全性配置及扩展插件,如 Hangfire.HttpJob,适合各种复杂场景下的任务调度需求。
35 1
NET任务调度框架Hangfire使用指南
|
18天前
|
开发框架 .NET PHP
ASP.NET Web Pages - 添加 Razor 代码
ASP.NET Web Pages 使用 Razor 标记添加服务器端代码,支持 C# 和 Visual Basic。Razor 语法简洁易学,类似于 ASP 和 PHP。例如,在网页中加入 `@DateTime.Now` 可以实时显示当前时间。
|
26天前
|
开发框架 搜索推荐 数据可视化
Django框架适合开发哪种类型的Web应用程序?
Django 框架凭借其强大的功能、稳定性和可扩展性,几乎可以适应各种类型的 Web 应用程序开发需求。无论是简单的网站还是复杂的企业级系统,Django 都能提供可靠的支持,帮助开发者快速构建高质量的应用。同时,其活跃的社区和丰富的资源也为开发者在项目实施过程中提供了有力的保障。
|
25天前
|
开发框架 JavaScript 前端开发
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势。通过明确的类型定义,TypeScript 能够在编码阶段发现潜在错误,提高代码质量;支持组件的清晰定义与复用,增强代码的可维护性;与 React、Vue 等框架结合,提供更佳的开发体验;适用于大型项目,优化代码结构和性能。随着 Web 技术的发展,TypeScript 的应用前景广阔,将继续引领 Web 开发的新趋势。
35 2
|
29天前
|
开发框架 安全 .NET
在数字化时代,.NET 技术凭借跨平台兼容性、丰富的开发工具和框架、高效的性能及强大的安全稳定性,成为软件开发的重要支柱
在数字化时代,.NET 技术凭借跨平台兼容性、丰富的开发工具和框架、高效的性能及强大的安全稳定性,成为软件开发的重要支柱。它不仅加速了应用开发进程,提升了开发质量和可靠性,还促进了创新和业务发展,培养了专业人才和技术社区,为软件开发和数字化转型做出了重要贡献。
24 5
|
29天前
|
传感器 人工智能 供应链
.NET开发技术在数字化时代的创新作用,从高效的开发环境、强大的性能表现、丰富的库和框架资源等方面揭示了其关键优势。
本文深入探讨了.NET开发技术在数字化时代的创新作用,从高效的开发环境、强大的性能表现、丰富的库和框架资源等方面揭示了其关键优势。通过企业级应用、Web应用及移动应用的创新案例,展示了.NET在各领域的广泛应用和巨大潜力。展望未来,.NET将与新兴技术深度融合,拓展跨平台开发,推动云原生应用发展,持续创新。
32 4
|
29天前
|
开发框架 .NET C#
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位。从企业应用到电子商务,再到移动开发,.NET 均展现出卓越性能,助力开发者提升效率与项目质量,推动行业持续发展。
27 4
|
27天前
|
中间件 Go API
Go语言中几种流行的Web框架,如Beego、Gin和Echo,分析了它们的特点、性能及适用场景,并讨论了如何根据项目需求、性能要求、团队经验和社区支持等因素选择最合适的框架
本文概述了Go语言中几种流行的Web框架,如Beego、Gin和Echo,分析了它们的特点、性能及适用场景,并讨论了如何根据项目需求、性能要求、团队经验和社区支持等因素选择最合适的框架。
70 1
.NetWeb集成cas
仅供参考
798 0
|
3月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
48 7