- 2
- 0
- 约5.75千字
- 约 10页
- 2018-04-14 发布于浙江
- 举报
[2018年最新整理]信息系统开发平台OpenExpressApp-支持勾选视图
信息系统开发平台OpenExpressApp-支持勾选视图在/zhoujg/archive/2009/10/12/1582009.htmlOpenExpressApp中/zhoujg/archive/2009/12/12/1622331.html部门+岗位=角色,功能权限属于角色的,所以功能权限也放在部门模块中设置了,后期将会单独对权限部门进行介绍,本篇讲解一下在功能权限实现中使用到的一种新的内置视图样式,我把它叫做勾选视图。之前的列表视图 OEA的所有Command都有一个Guid,角色下功能权限下存储的实际上是不能使用的功能的Guid,如果按照以往来实现,界面如下: 界面左边为模块,右边为分组的对象功能列表,这时可以通过设计一个【选择】功能,弹出一个对话框,对话框显示所有模块的所有对象功能列表,然后通过选择后加入细表。虽然这样可以很方便的使用以前框架的功能来实现,但是用户使用起来会很不方便。这种方式,勾选一个功能需要需要点击弹出对话框,然后选择一些内容,然后关闭。而系统模块功能可能很多,这样操作就会让用户点击按钮多次。 新增的勾选视图 勾选视图界面显示如上图所示,右边把原来弹出的对话框内容显示在这里,前面加了一个checkbox框提供选择,通过勾选操作来实现以往的选择功能。现在用户新增或者去除一个功能,只需要勾选一次就可以解决,而以往操作需要3个步骤。 之前项目任务中就遇到过类似操作,当时就想实现一个通用视图来提高易用性,不过由于时间原因没有做,直到今天才完成。下面介绍一下勾选视图的主要实现和使用。为了下面讲解时对数据说明清楚,定义一下两个术语: 源数据:勾选的列表,相当于以前弹出选择框的数据 目的数据:操作的对象列表,通过勾选操作影响到的实际对象实现要求由于这只是操作样式不一样,所以我不希望在以前的业务对象类库里加入这部分功能?,这部分功能与类库隔离开来把这个功能抽象为一中通用的样式视图,通过一些属性设置和约定来实现延用以前框架代码,在之前框架代码上扩展框架内部实现UI勾选列表是一个列表视图,所以可以重用以前的ListObjectView,只是需要增加一个checkbox列。现在实现为通过附加属性来实现 public static readonly DependencyProperty IsCheckedProperty = DependencyProperty.RegisterAttached(IsChecked, typeof(bool), typeof(SelectedDataAttached), new FrameworkPropertyMetadata(new PropertyChangedCallback(OnIsCheckedChanged))); /// summary /// Handles changes to the IsChecked property. /// /summary private static void OnIsCheckedChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { if (d is DataGrid) { DataGrid grid = d as DataGrid; if ((bool)e.NewValue) { DataGridCheckBoxColumn column = new DataGridCheckBoxColumn() { Header = 选择 }; column.Binding = new Binding(PropertyConvention.IsSelected); grid.Columns.Insert(0, column); } else { if ((grid.Columns[0] is DataGridCheckBoxColumn) ((string)grid.Columns[0].Header == 选择)) grid.Columns.RemoveAt(0); } } }数据以前UI显示的数据是父对象的子对象列表属性(目的数据),现在需要显示为源数据,则需要修改LoadData, /// summary /// 装载数据,考虑(AssociationOperateType.Selected /// /summary public override void LoadData() { base.LoadData(); if ((AllowLoadData) (AssociationOperateType.Selected == BOsPropInfo.AssociationAttribute.AssociationOperateType)) { Late
您可能关注的文档
- [2018年最新整理]保险概论第四章(36学时).ppt
- [2018年最新整理]保险理论与实务第七章保险监管.ppt
- [2018年最新整理]保险精算学概述zq.ppt
- [2018年最新整理]保险精算简介.ppt
- [2018年最新整理]保险精算论文.doc
- [2018年最新整理]保险考研信息一览.docx
- [2018年最新整理]保险职业经理人考试试题.doc
- [2018年最新整理]保险营销团队工作手册.doc
- [2018年最新整理]保险行业--基本养老保险应知应会培训-个人账户管理(PPT68页).ppt
- [2018年最新整理]保险行业利好,别让机遇错过你.ppt
- [2018年最新整理]信息素质教育--2010第一节.ppt
- [2018年最新整理]信息系统管理工程师考点分析与真题详解.doc
- [2018年最新整理]信息网络安全专业技术人员继续教育培训.doc
- [2018年最新整理]信息网络安全专业技术人员继续教育试题答案(轻松考到90).doc
- [2018年最新整理]信息编码习题答案或提示.doc
- [2018年最新整理]信息论与纠错编码题库.doc
- [2018年最新整理]信息论与编码(傅祖云_讲义)第一章.ppt
- [2018年最新整理]信息论与编码---序言.ppt
- [2018年最新整理]信息论与编码--------第24讲-总复习.ppt
- [2018年最新整理]信息论与编码-第7讲-第2章信源及信息度量4.ppt
原创力文档

文档评论(0)