首页 > 单独文章 > 正文

使用编程代码自定义表单模板简介

时间:2007-07-19 21:20:25 作者:officeba 【认证】

Microsoft Office InfoPath 为开发人员提供了一个自定义表单模板的丰富的开发环境。可以通过编写编程代码来自定义表单模板,编程代码可响应表单和数据验证 (数据验证:测试数据准确性的过程;可应用到控件以指定用户可输入的数据类型和范围的一组规则。)事件、访问和操作表单的基础 XML 文档、实现自定义的数据提交及合并以及访问外部数据源。自定义表单模板还涉及到修改某个表单模板文件 (表单文件:用来实施 InfoPath 表单的文件集合。文件类型可以包括支持表单功能所需的 .html、.xml、.xsd、.xslt、脚本和其他文件类型。),使其满足特定的需求。

应务必了解在为表单模板编程时涉及到的几个重要概念。这些概念包括 InfoPath 编程组件、声明性和编程性编程以及受支持的编程语言和编程环境。

本文内容

  • 编程组件
  • 声明性和编程性开发
  • 编程语言和编程环境

编程组件

InfoPath 可编程性涉及到修改表单模板的源文件,或编写脚本以创建使用 InfoPath 对象模型 (对象模型:分层组织的对象和集合库,代表了应用程序的内容和功能。对象和集合具有属性、方法和事件,可用于处理应用程序和与应用程序交互。)的自定义函数,从而自定义表单模板。下表中列出了可能涉及到编程交互的表单模板的主要组件。

组件 说明
对象模型 分层类型库,由集合、对象、属性、方法和事件组成,使用这些组件,表单模板开发人员可以通过编程的方法来控制 InfoPath 编辑环境的各个方面以及访问表单的基础 XML 文档。
数据验证 XML 架构 (XML 架构:以 XML 编写的正式规范,定义了 XML 文档的结构,包括元素名和丰富的数据类型,以及哪些元素要以组合形式出现,每一元素具有哪些属性。)、表达式和脚本代码的组合,可用来验证和限制允许用户在表单中输入的数据。
事件处理 一组事件处理程序 (事件处理程序:InfoPath 表单模板中的函数代码,用来响应用户操作或对 XML 数据的更改。),用于响应表单的基础 XML 文档的更改,响应视图 (视图:表单特定的显示设置,可通过表单模板来保存,并可在填写表单时应用到表单数据中。用户可在视图之间进行切换,以便选择表单中显示的数据量。)切换,实现自定义表单提交,或者响应表单的基础 XML 文档的加载。
用户界面 一组可自定义的用户界面组件,包括菜单、工具栏、按钮、命令栏和任务窗格。
编辑控件 InfoPath 特有的一组控件,包括集合、可选项和域,用于管理表单的基础 XML 文档并与之交互。请注意,您不能直接与这些编辑控件交互,而只能通过这些控件所绑定 (绑定:将控件连接到数据源中的字段或组,以便可以保存输入控件的数据。未绑定控件时,表明它未连接到字段或组,输入控件中的数据不会被保存。)到的表单的基础 XML 文档进行交互。
错误处理 事件处理程序、对象模型调用和表单定义文件 (.xsf) (表单定义文件:扩展名为 .xsf 的 XML 文件,该文件包含有关表单内使用的所有其他文件和组件的信息,包括用户界面自定义、XML 架构、视图、商业规则、事件和部署设置。) 条目的组合,用于处理表单中的错误。
安全 一组安全级别,用于限制对 InfoPath 对象模型和系统资源的访问。
数据提交 一组预定义的函数,可用于实现表单的自定义发布和提交功能。
业务逻辑 一组自定义的脚本文件,包含用来实现特定的编辑行为、数据验证、事件处理程序和数据流控制的编程代码。业务逻辑还可以包括对外部组件对象模型 (COM) (组件对象模型 (COM):Microsoft 开发的用于构建软件组件的规范,使其能集成到运行在 Microsoft Windows 操作系统上的程序中或为已有程序添加功能。) 组件的访问。
表单集成 与其他 Microsoft Office 程序(如 Microsoft Office Excel 或 Microsoft Office Outlook)集成。集成还可能涉及到使用后端服务器,如 Microsoft SQL Server、Microsoft Windows SharePoint Services 或 XML Web 服务。

 

声明性和编程性开发

在修改表单模板文件时,可以通过声明方式自定义表单模板,也就是说,在标准的文本编辑器中打开文件并手动更改文件中的元素、属性和值。在以编程方式 修改表单模板时,通过将脚本语言或托管代码语言与 InfoPath 对象模型(在某些情况下为 COM 组件)结合使用来编写编程代码,从而扩展和增强表单模板的行为。 

下面是一些可通过声明方式自定义表单模板的方法:

  • 修改 XML 架构 (.xsd) 文件
  • 修改在设计模式 (设计模式:InfoPath 设计环境,可以在其中创建或修改表单模板。)下创建的视图文件 (.xsl)
  • 修改表单定义文件 (.xsf)
  • 修改 XML 模板文件 (.xml) (XML 模板文件:一种 XML 文件,包含用户填写前表单字段中显示的示例数据。)

下面是一些可通过编程方式自定义表单模板的方法:

  • 添加表单的生命周期处理逻辑
  • 添加自定义的数据验证
  • 添加自定义的错误处理
  • 实现数据提交
  • 响应表单合并或导入
  • 使用自定义任务窗格 (自定义任务窗格:其内容显示在表单旁的窗口中的一个 .html 文件。自定义任务窗格可提供表单特定命令和帮助内容。)
  • 使用自定义对话框
  • 访问和修改表单的基础 XML 文档
  • 访问和修改表单定义文件 (.xsf)
  • 使用外部 COM 组件

有关 InfoPath 编程组件以及通过声明或编程方式自定义表单模板的详细信息,请参阅随 InfoPath 安装的“InfoPath 开发人员参考”,该参考可以在设计模式下从 InfoPath 帮助中访问。

 

编程语言和编程环境

与其他 Microsoft Office 程序一样,InfoPath 支持多种编程环境和编程语言,开发人员可以使用这些编程环境和语言来扩展和自动执行 Office 程序,但是,尽管大多数 Office 程序都将 Microsoft Visual Basic for Applications (VBA) (Visual Basic for Applications (VBA):宏语言版本的 Microsoft Visual Basic,用来编写 Windows 应用程序,它包含在几种 Microsoft 应用程序中。) 用作其主要的编程语言,但是,InfoPath 使用两种脚本语言(Microsoft JScript Microsoft Visual Basic Scripting Edition (VBScript) (Visual Basic Scripting Edition (VBScript):一种解释执行的基于对象的脚本语言,是 Microsoft Visual Basic 编程语言的子集。))和两种托管代码语言(Microsoft Visual C# 和 Microsoft Visual Basic)。另外,在 InfoPath 中编写脚本时所使用的编程环境是 Microsoft 脚本编辑器 (MSE)  (Microsoft 脚本编辑器:用于在数据访问页中添加文本、编辑 HTML 标记以及编辑任何 Microsoft Visual Basic Scripting Edition (VBScript) 代码。也可象在 Web 浏览器中一样,在脚本编辑器中查看页。),而不是 Visual Basic 编辑器 (Visual Basic 编辑器:一种环境,用于编写新的 Visual Basic for Applications 代码和过程,并编辑已有的代码和过程。Visual Basic 编辑器包括完整的调试工具集,用于查找代码中的语法、运行时和逻辑问题。)。 最后,为了在 InfoPath 中编写托管代码而包括的环境是 Microsoft Visual Studio 2005 Tools for Applications (VSTA),它可以在 Microsoft .NET Framework 2.0 和 Microsoft Core XML Services 6.0 存在的情况下安装。


相关文章

同类最新