MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(5)

    之前的两篇文章,介绍了Microsoft Dynamics CRM 2011开发中表单脚本的数据管理器Xrm.Page.data方面的内容,下面介绍UI管理器Xrm.Page.ui方面的内容。

    Xrm.Page.ui对象包括了两大类内容:

第一类,是一组方法,用于获取当前用户界面中的信息;

第二类,是一些集合,这些集合对应了一组组的界面上同类界面元素。

    下面,首先说一下获取UI信息的方法

方法

描述

close 关闭当前表单。
使用方法Xrm.Page.ui.close()
注意:尽量不要使用window.close()方法关闭表单,而应该使用Xrm.Page.ui.close()方式关闭表单,因为使用这种方式关闭表单,对于用户修改过表单中某些字段值的情况下,系统会弹出提示,是否进行保存。
getCurrentControl 获取当前获得焦点的界面元素控件
使用方法Xrm.Page.ui.getCurrentControl();
getFormType 获取记录的表单上下文,换言之,获取表单的类型
使用方法Xrm.Page.getFormType();
表单类型对应了当前记录的不同状态,对应列表如下:

表单类型值

表单类型

0 未定义
1 创建,点击“新建”按钮,系统弹出的表单
2 更新,编辑某条记录时,弹出的表单
3 只读,只有只读权限的用户打开记录时的表单
4 禁用,打开处于禁用状态的记录的表单
5 快速创建(已经弃用)
6 批量编辑
getViewPortHeight 获取视口(viewport)的高度
使用方法Xrm.Page.ui.getViewPortHeight()
所谓视口viewport,也就是包含表单数据的页面区域,对应了表单的正文body部分,而不包括导航区、标题区和页脚区,以及表单帮助区
getViewPortWidth 获取视口(viewport)的宽度
使用方法Xrm.Page.ui.getViewPortWidth()
所谓视口viewport,也就是包含表单数据的页面区域,对应了表单的正文body部分,而不包括导航区、标题区和页脚区,以及表单帮助区
refreshRibbon 刷新表单上的Ribbon工具条,从而强制系统重新计算、评估以确定Ribbon工具条中的内容
使用方法Xrm.Page.ui.refreshRibbon();
注意:这个方法主要用在了Ribbon中的EnableRule规则元素中,当该规则元素将表单某个字段值作为判断依据时,当脚本代码更改了字段值之后,使用refreshRibbon()方法,强制系统重新计算,从而刷新Ribbon工具条显示效果
posted on 2012-03-22 13:39  石头居  阅读(3391)  评论(5编辑  收藏  举报