为多个设备配置 Web 应用程序

更新:2007 年 11 月

虽然 ASP.NET 移动网页能够自动将适当的标记呈现到各种移动设备,但您可以定义特定于设备或设备类的呈现和处理。设备筛选器可用于将特定的设备子集作为目标。它通过根据设备的功能指定选择条件来实现此目的。设备筛选器存储在 Web.config 文件的 <deviceFilters> 节中。您可以在 Web.config 文件中列出常用的筛选器并在应用程序的任意位置通过名称引用它们。

说明:

设备筛选器名称是区分大小写的。名为 isColor 的筛选器与名为 IsColor 的筛选器是不同的筛选器。

定义了设备筛选器之后,您可以将其应用于 ASP.NET 移动控件中以定义特定于设备的呈现。应用的设备筛选器映射到 .aspx 文件中 DeviceSpecific 构造内的 <choice> 元素。然后,您可以为这些应用的设备筛选器设置属性重写和模板化。一些特定于设备的自定义示例包括:

  • 重写控件的属性,例如根据显示功能为 Image 控件选择不同的图像。

  • 对不同的移动设备使用不同的呈现样式。

  • 在设备(例如 Pocket PC)上使用模板实现更丰富的呈现。

这些方案中的每一个都需要根据目标设备是否与 Web.config 文件中的 <deviceFilters> 节匹配来进行筛选。这些筛选器也可能遍布在应用程序中,而不是只出现在一个地方。

有关更多信息,请参见设备筛选建议

设备模板

对于特定的设备和标记语言(例如 HTML、cHTML 或 WML),所有移动控件都具有默认的外观和布局。您可以通过设置属性或使用样式对外观和布局进行操作。某些控件还允许您通过使用模板来自定义它们的外观。

模板是一组元素和控件,构成用于特定标记语言的控件中某一部分的布局。例如,在 List 控件中,除了其他模板之外,您可以定义一个页眉或页脚模板。您还可以定义一个模板来设置每个列表项的格式,并且可以使用不同的模板来设置替换列表项的格式。

说明:

模板不同于样式。而样式指定元素的外观,如颜色和字体。如果您想做的所有工作是更改控件的外观,请使用样式。可以同时使用样式和模板来控制您在模板中定义的元素的外观。

模板由标记语言和嵌入的控件组成。当控件在移动网页中运行时,ASP.NET 呈现模板的内容,而不是控件的默认标记。有关更多信息,请参见使用特定于设备的模板

某些控件通过 <deviceSpecific> 和 <choice> 标记允许使用多组模板。多组模板称为模板集。

重写属性

您的移动网页可能需要移动控件属性根据不同的目标设备进行不同的设置。例如,您可能要让 Label 控件在一组设备上具有长文本,而在另一组设备上具有较简短的文本。对于每个控件,可以重写每个目标设备的属性。

说明:

若要设置属性重写,您必须先定义设备筛选器。使用这些筛选器来指定要定义自定义属性值的那组移动设备。

请参见

概念

移动控件的自定义属性

设备筛选建议

设备计算方法

扩展的浏览器功能

参考

HasCapability

MobileControl