モバイル コントロールのカスタム属性
更新 : 2007 年 11 月
すべての ASP.NET モバイル コントロールで、ASP.NET Web ページの IAttributeAccessor インターフェイスを使用して、カスタム コントロール属性を設定できます。このインターフェイスでは、GetAttribute メソッドと SetAttribute メソッドを使用できます。また、MobileControl クラスは、CustomAttributes というコレクションを公開します。
カスタム属性は、コントロールに関する追加の属性を指定するために使用し、コントロールの動作またはレンダリングを調整するためにデバイス固有のアダプタで使用することができます。
既定では、カスタム属性をコントロールに設定する機能は無効になっています。カスタム属性を有効にするには、以下の 2 つの方法があります。
次のコード例に示すように、Web.config ファイルの <mobileControls> セクションに属性を設定します。
<configuration> <system.web> ... <mobileControls allowCustomAttributes="True" /> ... </system.web> </configuration>
この設定は、アプリケーションのすべてのページの既定値に影響します。
MobilePage クラスの AllowCustomAttributes プロパティを true に設定します。この設定は、ページのすべてのコントロールに影響します。
TextBox コントロールの wmlFormat 属性は、WML <input> 要素の Format 属性として WML デバイスに送信されます。これはカスタム属性であり、コントロールの最上位の属性とは異なります。ただし、カスタム属性が機能する前に、それを有効にする必要があります。有効な形式の一覧については、WML の仕様を参照してください。この仕様は、WAP (Wireless Application Protocol) フォーラム (http://www.wapforum.org) から入手できます。
wmlFormat 属性は、TextBox コントロールの Numeric プロパティをオーバーライドします。たとえば、wmlFormat 属性が "NNN" に設定されている場合、<input> 要素は 3 つの数値文字に制限されます。
メモ : |
---|
カスタム属性を有効にすると、プロパティ名の入力ミスがカスタム属性と解釈されることがあります。たとえば、コントロールの Text プロパティに誤って「Txet」と入力しても、例外は発生せず、"Txet" という名前のカスタム属性として保存されてしまいます。予防策として、カスタム属性は既定でオフに設定されています。 |