很详细的devexpress应用案例,留着以后参考。

注:转载自http://***/zh-CN/App/Feature.aspx?AppId=50021

UPMS(User Permissions Management System)通用用户权限管理系统(以下简称UPMS),是由慧都咨询高级工程师潜心研发的一款通用、灵活、可扩展且支持多系统的开放型用户权限系统。 该系统针对不同应用系统设计,提供用户权限模块的基础框架和通用模型,帮助开发者快速实施和开发出符合不同需求的用户权限管理模块。能够最大程度帮助您降 低开发工作量,节约开发成本。

1)UPMS通用用户权限系统主界面:

说明:主界面部分用到了DevExpress中用于页面分割的ASPxSplitter控 件,该控件将页面分成了4个部分:顶部标题、左侧菜单、右侧内容展示区、版权申明。使用该控件可以方便的进行界面布局,不仅如此,还可实现自适应窗口大 小,运行时自由调整各窗口大小的功能。由于UPMS是一个B/S系统,因此自适应浏览器窗口是必要的特性,借助Dev强大的ASPxSplitter控 件,轻松实现了这个功能。

2)左侧以树形列表形式展示的导航栏菜单:

说明:左侧导航栏菜单用到了DevExpress的TreeView控件。 UPMS应用系统下的子菜单根据后台数据动态加载,需要根据用户权限判断具体显示哪些子菜单,然后让每个子菜单绑定相应的URL地址以供跳转。之所以选择 TreeView来实现这个功能,是因为其本身自带的功能非常完善,能节省不少开发时间。使用这个控件最终实现了高亮选中节点、节点图标显示、动态或静态 数据绑定、异步刷新、展开折叠菜单项等界面效果。

3)以网格形式展示的用户管理界面:

说明:用户管理界面部分实现的功能较多。由于该系统是通用系统,用户属性可以在运行时添加,因此要求Grid可以动 态的绑定数据,可以根据实际数据动态的增加或移除列,可以映射数据字典值,考虑到用户数据可能较大,还需要支持按需加载,即每次只加载一个页面的数据。同 时,Grid需要支持数据行中支持增删改以及多选、数据导出等操作。

DevExpress的GridView控件完美的实现了以上所有功能。GridView很好的支持了动态生成表格列并绑定数据,支持根据不同的值映射不同的显示文本,还实现了直接导出到Excel和PDF的功能。该页面为了实现按需加载,没有采用Grid自带的分页,而是采用了Dev单独提供的分页控件PageControl结合Grid进行实现。要说明的是,如果用户数据量不大,Grid自带的分页可以完美的实现数据展示。如果数据层采用Dev的XPO,还可使用Grid的SeverMode模式,实现大数据量的快速展示。

4)使用TreeList控件实现的树形列表界面:

5)单击角色名称会弹出编辑框:

说明:该系统中的编辑、查看数据都通过弹出窗口形式进行展示,所以选择用DevExpress的PopupControl。该控件支持模态、非模态的弹窗,可以动态指定显示页面,显示位置,显示时长等。

6)分页功能:

说明:此界面中需要展示多项信息,如用户详情的基本信息、角色信息、权限信息、用户组信息等,因此选择使用PageControl来进行实现。该控件提供多种显示样式设置,可单独为每个Tab页绑定页面,也可在一个页面中实现。

7)简洁直观的用户关联界面:

说明:该系统支持用户与系统的关联设置,提供用户与接入系统间的快速设置。可以自由将选中的用户添加到关联系统下,还可直接移除列表中的关联,整个操作直观快捷,用户可随时查看到关联情况。左侧界面使用了Dev的ListBox控件,右侧是TreeView控件。

8)以网格和图表进行数据展示的应用系统管理界面:

说明:该系统中采用了两种图表对数据进行展示分析,左边以线形图表统计新增用户数,右边以饼图展示各系统用户数。这部分使用的是Dev的WebChart控件,WebChart具有丰富的图表展示类型,包括2D和3D图表,有饼图、点状图、柱状图、线形图等,而且使用方便,生成的图表非常绚丽。

该系统中使用了大量的Callback以及CallbackPanel控件,以 完成前台与后台的异步数据交互。如上面的图表界面能实时更新图表数据,无需刷新,大大提升了用户体验。要说明的一点是,DevExpress提供了 Callback和CallbackPanel两种异步刷新控件,CallbackPanel不同于Callback的地方 是:CallbackPanel将刷新所包含的区域,而Callback是异步传输数据,不刷新界面。在线体验UPMS通用用户权限系统

[转]很详细的devexpress应用案例的更多相关文章

  1. DevExpress应用案例--语音识别器Dual Writer

    Dual Writer是 一个以语音识别为特色的文档处理器,无需安装其他软件,只需要插入你的麦克风就可以开始录入口述文字.它不仅支持MS Word的DOCX格式,还支持 RTF.ODT.TXT等常见文 ...

  2. 很详细的SpringBoot整合UEditor教程

    很详细的SpringBoot整合UEditor教程 2017年04月10日 20:27:21 小宝2333 阅读数:21529    版权声明:本文为博主原创文章,未经博主允许不得转载. https: ...

  3. 很详细、很移动的Linux makefile教程:介绍,总述,书写规则,书写命令,使用变量,使用条件推断,使用函数,Make 的运行,隐含规则 使用make更新函数库文件 后序

    很详细.很移动的Linux makefile 教程 内容如下: Makefile 介绍 Makefile 总述 书写规则 书写命令 使用变量 使用条件推断 使用函数 make 的运行 隐含规则 使用m ...

  4. SecureCRT的安装与破解(过程很详细!!!)

    SecureCRT的安装与破解(过程很详细!!!) 使用SecureCRT可以方便用户在windows环境下对linux主机进行管理,这里为大家讲一下SecureCRT的破解方法,仅供大家参考学习: ...

  5. ETL讲解(很详细!!!)

    ETL讲解(很详细!!!) ETL是将业务系统的数据经过抽取.清洗转换之后加载到数据仓库的过程,目的是将企业中的分散.零乱.标准不统一的数据整合到一起,为企业的决策提供分析依据. ETL是BI项目重要 ...

  6. 00-01.PHP 网站假设win7配置自己的IIS服务器亲自做的图文很详细 [转 - 赞 ]

    win7配置自己的IIS服务器亲自做的图文很详细 分步阅读 跟人网站爱好初学者必看的win7系统配置自己的IIS,可以在你自己的电脑上配置网站服务器发不到网上,下面就跟着我的步骤一起做吧100%成功. ...

  7. 在MyEclipse(2015)中上传项目到github的步骤(很详细)

    (图文)在MyEclipse(2015)中上传项目到github的步骤(很详细) git|smartGit使用详解 SmartGit使用教程

  8. 转载自鸿燕藏锋-ETL讲解(很详细!!!)

    ETL讲解(很详细!!!)   ETL讲解(很详细!!!) ETL是将业务系统的数据经过抽取.清洗转换之后加载到数据仓库的过程,目的是将企业中的分散.零乱.标准不统一的数据整合到一起,为企业的决策提供 ...

  9. 很详细的Nginx配置说明

    这篇文章主要为大家分享了一篇很详细的Nginx配置说明,主要内容包括Nginx常用功能.Nginx配置文件结构,想要了解Nginx配置的朋友不要错过,参考一下   Nginx是lgor Sysoev为 ...

随机推荐

  1. javascript学习总结(三):如何较好的使用js。

    1 假如浏览器不支持JavaScript怎么办? a.为什么浏览器会不支持?大部分浏览器都有禁用脚本的功能,例如chrome.b.在js被禁用的情况下要保证网页仍能实现它的核心功能(关键的用户需求) ...

  2. Java中如何将String转成Date

    Java中如何将String转成Date 最近在开发Json数据反序列化为Java对象的时候发现spring mvc 和 Jackson 对Date类型对支持不是特别好,虽然在Java对象序列化为Js ...

  3. java类加载器-系统类加载器

    系统类加载器 系统类加载器可能都耳详能熟,但是为了完整点,还是先简单的说说系统的类加载器吧. public class Test { public static void main(String[] ...

  4. mysql的collation

    mysql的collation大致的意思就是字符序.首先字符本来是不分大小的,那么对字符的>, = , < 操作就需要有个字符序的规则.collation做的就是这个事情,你可以对表进行字 ...

  5. C# 通过反射来动态创建泛型类型

    C# 通过反射来动态创建泛型类型与创建普通类型的区别在于:泛型参数的处理 创建泛型类型存在三种情况: 第一种:知道泛型类型,但需要动态指定泛型参数: 第二种:知道泛型参数,但需要动态创建指定参数的泛型 ...

  6. Auto Mapper04(MVC中的配置)

    学习如何在MVC项目中配置AutoMapper. 一:首先在MVC项目中引用AutoMapper的DLL文件,接着创建一个接口,这里面我们需要定义两个方法,接口里面的方法只能定义不能实现,也没有什么修 ...

  7. 从C#到Objective-C,循序渐进学习苹果开发(4)--代码块(block)和错误异常处理的理解

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.本文继续上一篇随笔<从 ...

  8. 利用chardet检测网页编码

    环境:Win7_x64 + python3.4.3 需要先下载chardet并进行安装,下载地址:https://pypi.python.org/packages/source/c/chardet/c ...

  9. 孙鑫MFC学习笔记4:MFC画图

    1.画线方法 *1.捕获鼠标按下和弹起消息,获取两个点 *2.消息响应,画线 2.在CMainFrame类中的鼠标左键事件得不到响应的原因是CNameView覆盖了CMainFrame 3.注释宏 4 ...

  10. Support for multiple result sets

    https://blueprints.launchpad.net/myconnpy/+spec/sp-multi-resultsets Calling a stored procedure can p ...