添加 HTML 模板到 Webclass

添加 HTML 模板到您的 IIS 应用程序可使您的 webclass 在响应用户请求时向浏览器发送 HTML 页面。当您添加一个模板到您的 webclass 时,选择一个要与它关联的 HTML 页面,然后 Visual Basic 扫描那个文件并查找能够向服务器发出请求的 HTML 标记。这些标志包括窗体元素、图像标记、超链接和大多数包含 URL引用的其他标记。

注意 虽然一个 webclass 可以包含多个模板 webitem,但每个模板 webitem 仅能表示一个 HTML 页面。对每一个想包括在您应用程序中的 HTML 页面,您必须添加附加的模板。

HTML 页面中的标记可以包含发出一个服务器请求的属性。例如,在 IMG 标记中,SRC属性被用来指定一个 URL 位置,从该位置中获取一个文件。这种属性和其他调用服务器的类似属性可以变成您的IIS 应用程序的事件。Visual Basic 在设计器窗口的右边窗格中对这些标记和属性的每一个进行列表。如果 ID 属性存在的话,每一个标记的名字都来自该标记的 ID 属性。ID属性 是您添加到.htm文件本身的一个可选的 HTML 属性。对文件中的每一个 HTML 标记,您可以指定一个唯一的 ID,该ID 可以用来标识脚本或代码中的那个标记。

注意 您可以使用 Visual Basic 去指定 webclass 的名字或它的模板名字,但是您不能使用“属性”窗口对选择标记指定一个 ID。

如果您的 HTML 模板文件中包含一个没有 ID 的标记,则设计器根据它在 HTML 页面中的位置为它指定一个 ID。例如,没有 ID 的第三个<A>标记将被命名为 Hyperlink3。这个 ID 不是永久的,如果您没有将任何的标记属性和事件或 webitem 相连接,则 ID 不保存在 HTML 页面中。但是,当您连接一个标记属性时,ID 变成永久的并且保存在页面的.dsr 文件中。

在可以向您的工程添加一个模板之前必须存储您的工程。在您添加模板之后,Visual Basic将做如下事情之一:

在当您保存或调试工程,或使用“编辑 HTML 模板...”菜单命令时,就发生复制.htm 文件的操作。

重点 从这点来看,工程目录中的.htm 文件可作为您工程的源文件。如果您想更改 HTML 页面的外观,您可以在 HTML 页面的此副本中进行。

如果您的 HTML 模板文件引用任何另外的文件,例如图像,您必须将这些文件复制到工程目录或其子目录中。您可以在添加模板到 webclass 之前或之后进行这些工作,但是必须在调试或运行此工程前进行这些工作。

另外,如果您引入一个页面,而和此页面同样名字的.htm 文件已存在于工程目录中,则 VB 在为新文件创建的.htm 文件追加一个数字。如果您将一个模板重复用于多个 webclass 时,它可以防止 Visual Basic覆盖一个已存在的.htm 文件。例如,假设您有一个称为 feedbk.htm 的 HTML 页面,当您第一次将它添加到一个 webclass 时,Visual Basic 在工程目录中产生一个名为 feedbk.htm 的文件,如果您添加同样的文件到应用程序的另一个 webclass 时,Visual Basic 新产生.htm 文件命名为 feedbk1.htm。

详细信息 关于您工程中应当使用的目录结构的详细信息,请参阅本章的“管理工程文件”。关于标记和属性的详细信息,请参阅“开发 Internet 应用程序”中的“理解 Internet 要素”。

要添加一个 HTML 模板到一个 IIS 应用程序,请按照以下步骤执行:

  1. 在“WebClass 设计器”窗口中,单击 Webclass 工具栏的“添加 HTML 模板 WebItem”按钮。

  2. 在“添加 HTML 模板”对话框中,选择您想要的 HTML 页面,然后单击“确定”。

  3. 如果您选择的模板文件引用任何的附加文件,如.gif 或.jpg 文件,将这些文件复制到工程目录或它下面的子目录中。

    注意 如果模板文件中包含对开发计算机上这些文件以前位置的绝对引用,您需要对.htm文件进行更改来反映当布署到服务器时这些文件应在的位置。 关于在您的模板文件中使用相对和绝对路径的详细信息,请参阅“管理工程文件”。

从一个Webclass中删除一个模板

如果您不想在响应请求时将这个模板文件发送到浏览器,您可以从 webclass 中删除这个模板。您不能用一个模板替换另一个模板,您必须删除第一个模板文件并添加一个链接到一个新文件。如果模板文件具有相同的名字,为以前模板编写的任何事件过程可用于新模板。

例如,假设您正在使用一个目录应用程序并且想更改您应用程序使用的次序窗体,你删除一个称为 OrderForm 的模板,然后添加具有同样名字的另一个HTML页面,该页面包含了一个不同的次序输入窗体。与原来 OrderForm 文件相关联的所有事件过程,如 OrderForm_Respond,立即与新文件相关联。

要从 webclass 中删除一个模板,请

为一个模板编辑 HTML

在您插入一个 HTML 模板文件之后,您可以使用你所选择的 HTML 编辑器对页面的内容和布局进行更改。您可以通过从一个模板的上下文菜单中选择“编辑 HTML 模板...”选项来进行这项工作。Visual Basic 从工程目录中打开这个.htm 文件,在您完成编辑之后,设计器显示一个提示,询问您是否想刷新这个文件。如果您想看到您所做的更改,必须刷新这个文件。

缺省情况下,当编辑您的模板时,Visual Basic 显示您的缺省 HTML 编辑器或记事本。Visual Basic 通过查看系统注册表自动地检测您的缺省 HTML 编辑器。

注意 您可以在编辑您的模板时,通过在“工程选项”对话框的“高级”选项卡的“扩展 HTML 编辑器”字段输入一个项目来决定要打开的程序。

要编辑您的 HTML webitem,请按照以下步骤执行:

  1. 在“设计器”窗口的左边窗格中,右键单击要编辑 HTML 的模板,然后选择“编辑 HTML 模板...”。

  2. 修改.htm 文件并保存它,然后返回到 Visual Basic。

  3. 如果您对文件中的事件标记进行了修改,右键单击 webitem 并选择“刷新 HTML 模板”,或响应提示进行刷新。

    Visual Basic 对文件进行语法分析。

保存对模板的更改

如果您想用已有的对.htm 文件的修改来更新 webclass,则应对模板和它的外部文件之间的链接进行刷新。当刷新模板时,Visual Basic 查看模板中当前列出的事件是否仍然存在,是否应该添加任何新的属性。该程序添加任何新属性并处理对现有事件的任何修改。如果模板的某事件在.htm 文件中不再存在,Visual Basic 将它从 webclass 中删除。但对事件编写的任何过程没有被删除,您必须自己删除事件过程。

如果另一个用户对您的 webclass 使用的.htm 文件进行更改,您会收到一个提示,询问您是否要对模板进行刷新。当每一次用户在编辑器中保存该.htm 文件时都会出现这个信息。

要保存对引用的.htm 文件的更改,请

详细信息 关于连接和断开一个 webitem 事件的详细信息,请参阅“Webclass 中的关联事件”。