Attributi personalizzati

Tutti i controlli mobili ASP .NET consentono allo sviluppatore di impostare attributi di controllo personalizzati mediante l'utilizzo dell'interfaccia IAttributeAccessor di Web Form. Tale interfaccia rende disponibili i metodi IAttributeAccessor.GetAttribute e IAttributeAccessor.SetAttribute; inoltre, nella classe MobileControl viene esposto il dizionario CustomAttributes.

Gli attributi personalizzati possono essere utilizzati sia per specificare nuovi attributi relativi a un controllo sia per regolare il rendering o il comportamento del controllo in un adattatore specifico del dispositivo.

Per impostazione predefinita, non è possibile impostare attributi personalizzati. Per attivarli, è possibile procedere in due modi diversi:

  • Impostando un attributo nella sezione <mobileControls> di Web.config, così come indicato nell'esempio di codice riportato di seguito.

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

    Tale impostazione influisce sui valori predefiniti di tutte le pagine dell'applicazione.

  • Impostando la proprietà AllowCustomAttributes della classe MobilePage su true. Tale impostazione influisce su tutti i controlli della pagina.

L'attributo wmlFormat per il controllo TextBox viene inviato ai dispositivi WML come proprietà Format dell'elemento <input> WML. Si tratta di un attributo personalizzato, che si differenzia dagli attributi di prima classe del controllo. Per rendere operativi gli attributi personalizzati, occorre innanzitutto attivarli. Per un elenco completo dei formati validi, vedere la specifica WML disponibile nel forum WAP (Wireless Application Protocol) all'indirizzo http://www.wapforum.org (informazioni in lingua inglese).

Nota   L'attributo wmlFormat esegue l'override della proprietà Numeric per il controllo Textbox. Se, ad esempio, l'attributo wmlFormat è stato impostato su "NNN", nell'elemento <input> non potranno essere presenti più di tre caratteri numerici.

Attenzione   È possibile che nomi di proprietà errati vengano scambiati per attributi personalizzati, quando questi ultimi sono attivati. Se, ad esempio, si digita per errore "Txet" per specificare la proprietà Text di un controllo, il parser lo salverà come attributo personalizzato "Txet" anziché generare un'eccezione. Per precauzione, l'impostazione predefinita degli attributi personalizzati è off.

Vedere anche

Configurazione di un'applicazione Web per più dispositivi | Suggerimenti per l'applicazione di filtri di dispositivo | Metodo HasCapability | Metodi di valutazione dei dispositivi | Funzionalità estese del browser | Classe MobileControl