asp.net

移动控件的自定义属性

2013-11-04

所有 ASP.NET 移动控件通过使用 ASP.NET 网页的 IAttributeAccessor 接口允许您设置自定义控件属性。此接口提供方法 GetAttributeSetAttribute。此外,MobileControl 类公开一个名为 CustomAttributes 的集合。

自定义属性可用于指定有关控件的附加属性并可用于特定于设备的适配器以调整控件的行为或呈现。

默认情况下,禁用在控件上设置自定义属性的功能。有两种方法可以启用自定义属性:

  • 通过设置 Web.config 文件中 <mobileControls> 节的一个属性,如下面的代码示例所示:

     
    <configuration>
      <system.web>
            ...
          <mobileControls allowCustomAttributes="True" />
          ...
      </system.web>
    </configuration>
    

    此设置影响应用程序中所有页的默认设置。

  • 通过将 MobilePage 类的 AllowCustomAttributes 属性设置为 true。此设置影响页上的所有控件。

TextBox 控件的 wmlFormat 属性作为 WML <input> 元素的 Format 属性被发送到 WML 设备。这是一个自定义属性,它与控件的高级属性不同。但是,在自定义属性工作之前,您必须先启用它们。有关有效格式的完整列表,请参见 WML 规范,位于 http://www.wapforum.org 的无线应用协议 (WAP) 论坛中提供该规范。

wmlFormat 属性 (Attribute) 重写 TextBox 控件的 Numeric 属性 (Property)。例如,如果 wmlFormat 属性设置为“NNN”,<input> 元素就会被限制为三个数字字符。

说明:

如果打开自定义属性,则属性名中的版式错误可能被误认为自定义属性。例如,如果您将控件的 Text 属性 (Property) 错误地指定为“Txet”,则分析器将其保存为一个名为“Txet”的自定义属性 (Attribute),而不会引发异常。作为预防措施,默认情况下不允许自定义属性。