在 Iron Speed Designer 应用程序中集成帮助





0/5 (0投票)
了解如何将帮助系统集成到任何 Iron Speed Designer 生成的应用程序中。
![]() |
将帮助系统集成到任何 Iron Speed Designer 生成的应用程序中。- Phil Porter, PPG&A, Inc. 总裁 2008 年 3 月 1 日 Iron Speed Designer V5.X |
引言
向任何应用程序添加帮助系统通常是开发人员待办事项列表中的最后一项。但是,有了 Iron Speed Designer 和一个表,就可以轻松拥有一个完全可定制的多语言帮助系统,并将其集成到任何应用程序中。
我一直对帮助系统感到恼火,因为它们通常是静态的。我无法添加自己的注释,而是需要一个完全独立的应用程序来存储它们。
当客户使用您的应用程序时,他们通常有自己的业务流程与应用程序配合使用。该软件可以分发给许多拥有不同语言和业务实践的公司,因此提供可定制的帮助是有意义的。只需稍加努力,即可轻松创建完全可定制的字段级帮助系统。
在本文中,我将讨论如何使用 Iron Speed Designer 和开源 FCKeditor 将帮助系统集成到任何 Iron Speed Designer 生成的应用程序中。我使用了 FCKeditor,但您也可以使用您选择的任何 Web 编辑器。FCKeditor 可以在 http://www.fckeditor.net/ 找到。
在此示例中,我将使用 Iron Speed Designer Free Edition V5.0 和 Microsoft Access 数据库来创建我的帮助系统。
Procedure
与任何 Iron Speed Designer 生成的应用程序一样,您需要从一个设计良好的数据库开始。所以,让我们开始构建两个表。第一个核心表将是名为 HelpNodes 的帮助表(参见图 1)。为您的应用程序使用任何合适的名称。第二个表将是 Customer 表,我们将使用它来演示如何链接字段级帮助。
我们将主要关注 HelpNodes 表,因为它是我们帮助系统的主要表。有关表中每个字段的说明,请参见图 2。基本思想是存在根节点,从根节点可以创建许多子节点,直到任何级别。这是通过将帮助表从 ParentNode 自连接到 NodeID 来完成的。这可以在数据库级别完成,但我希望演示如何使用 Iron Speed Designer(参见图 3)。当您创建自连接时,Iron Speed Designer 会自动创建用于选择父节点的下拉列表,并显示节点标题。
- NodeID - 主键字段
- NodeCaption - 将在树视图中显示的节点标题
- RootNodeID - 指向基节点 (NodeID),以便更快地访问父节点
- ParentNode - 指向父节点 (NodeID)
- Language - 指定当前节点的语言
- Sequence - 对应要显示的同级节点进行排序
- Form - 字段级帮助的引用。也可以使用其他相关的锚点。
- HelpMessage - 实际的帮助消息
创建 Iron Speed Designer 应用程序超出了本文的范围。我的讨论将侧重于在 Iron Speed Designer 中构建帮助表单。当您使用 Iron Speed Designer 中的应用程序向导时,将为 Help 表生成显示、添加、编辑和浏览页面。生成的页面基本完成。但是,我们希望集成第三方控件以用于 Web 编辑器,并为 Web 表单添加一些我们自己的视觉提示。
通过在添加表单旁边放置一个树视图,用户可以看到他们的条目将放置在哪里,参见图 4。他们还可以选择父节点,添加/编辑表单将通过将其选择为父节点下拉列表来自动反映其更改。语言输入已更改为下拉列表输入字段,并使用自定义函数进行填充。Sequence 已更改为下拉列表,并在设计器内部通过指定值进行填充。Form 输入字段已更改为下拉列表,通过覆盖生成的下拉列表填充,我能够调用自定义例程来遍历站点并用所有表单填充它。最后一个要更改的输入字段是 Help Message 本身,它被替换为了一个开源编辑器。可以在知识库中搜索有关如何集成第三方控件的文章。
现在有了输入数据的方式,添加节点表单需要将每个字段保存到数据库。生成的代码处理了除第三方控件之外的所有条目。借助 Iron Speed Designer 框架,这很简单。该框架允许覆盖许多生成的 C# 方法。如果我们覆盖 GetUIData,则添加帮助记录控件现在可以引用 Help Message 控件并填充数据源,参见图 5。这是一个填充任何非视觉元素的不错地方。
我们只是采用了一个现成的生成页面,并对其进行了扩展以满足应用程序的特定要求。所有这些都体现了 Iron Speed Designer 生成应用程序的可扩展性。
为了让用户与生成的帮助文档进行交互,我们创建了一个标准的 ASP.NET 页面来显示它。用户界面 (UI) 组件在树视图中显示帮助文档,其中包含两个 `
由于字段级帮助内容已包含在帮助表中,因此将帮助与用户界面连接起来非常容易。编辑器使用标准的 HTML,因此锚标记用作 HTML 块的引用。在下面的示例中,客户姓名、地址信息和账单地址信息附加了锚点。稍后我们将使用这些锚点来链接到各个字段。
图 8 是一个客户添加页面。它显示了一个呼叫框,其中显示了客户姓名的字段级帮助。这与客户帮助文档中使用的内容相同。我们通过使用锚点提取了与客户姓名相关的内容。为了实现此功能,在每个字段旁边放置了一个图像按钮。然后,从 Iron Speed Designer 中设置了一个鼠标悬停事件来调用 JavaScript 函数。
该函数随后调用了一个 Web 方法来检索内容并将其传回显示。涉及多种不同的技术和一些编码,但这是可行的。
还可以通过其他方式从帮助子系统获得额外使用。例如,您可以生成 PDF 手册。通过少量修改,可以使用上述示例生成一个应用程序来创建完整的文档应用程序。未来期望的一个附加功能是允许最终用户动态地将字段级帮助图标链接到特定的帮助文档/锚点。能够从应用程序页面更新字段级内容也将是一个好主意。
结论
在本文中,我指出了使用 Iron Speed Designer 生成的应用程序创建帮助系统的优势。希望您喜欢这篇文章。
在 Iron Speed 上阅读更多内容:Iron Speed Designer 应用程序中的复式记账。