Controllo StyleSheet

Il controllo StyleSheet, che non è possibile rappresentare visivamente, viene utilizzato per organizzare gli stili che saranno applicati ad altri controlli.

Il controllo StyleSheet può contenere un numero indefinito di elementi <Style> o di elementi che ereditano dall'elemento Style. È necessario che ogni elemento Style nel foglio di stile presenti una proprietà Name univoca. È possibile utilizzare la proprietà Name per fare riferimento a ogni elemento Style nel controllo StyleSheet da altri controlli nello stesso oggetto MobilePage.

Nota   Il controllo StyleSheet ignora i relativi attributi di stile. L'impostazione di un attributo di stile nel controllo StyleSheet non produce alcun effetto sugli stili presenti come elementi figlio nel controllo StyleSheet.

È anche possibile utilizzare per una pagina mobile un foglio di stile esterno. Lo stesso foglio di stile esterno può essere condiviso da diverse pagine. Per creare un foglio di stile esterno, è necessario creare un controllo utente in un file ASCX in cui inserire un singolo controllo del foglio di stile che presenti un insieme di stili. Per fare riferimento a quel file, inserire un controllo del foglio di stile nella pagina e impostare la relativa proprietà ReferencePath sull'URL relativo del controllo utente. Per ulteriori informazioni sui controlli utente, vedere la documentazione Creazione di controlli mobili personalizzati.

Sintassi dei controlli mobili

Le proprietà necessarie, le impostazioni predefinite e gli elementi dalle funzionalità di codice sono in grassetto.

<mobile:Stylesheetrunat="server"
   id="id"
   ReferencePath="externalReferencePath">
   style declarations
</mobile:Stylesheet>

Foglio di stile predefinito

Un foglio di stile predefinito definito dal framework della pagina ASP.NET è in grado di supportare diversi stili. Nel foglio di stile predefinito sono supportati gli stili riportati di seguito.

Stile Valori di stile associati
title Font-Bold = true, FontSize = large
error ForeColor = red
subcommand FontSize = small

È possibile fare riferimento a questi stili tramite controlli o altri stili. È inoltre possibile creare stili in grado di eseguire l'override di questi stili predefiniti. Per ulteriori informazioni sulle caratteristiche e l'ereditarietà degli stili, vedere la documentazione Stili.

Regole di contenimento

I controlli descritti di seguito possono contenere un controllo StyleSheet.

Controllo Commenti
System.Web.UI.MobileControls.MobilePage In un controllo MobilePage possono essere contenuti zero oppure un controllo StyleSheet.

In un controllo StyleSheet possono essere contenuti i controlli descritti di seguito.

Controllo Commenti
System.Web.UI.MobileControls.Style Un controllo StyleSheet può contenere un numero indefinito di controlli StyleSheet o qualsiasi altra classe che eredita dalla classe Style.

Modelli di dispositivo

Nessuno.

Comportamento specifico del dispositivo

Non esiste alcun comportamento specifico del dispositivo per un controllo StyleSheet.

Un foglio di stile può determinare soltanto il valore delle caratteristiche dei controlli non ciò che il dispositivo sarà in grado di eseguire con queste caratteristiche.

Esempio

Nell'esempio riportato di seguito vengono creati un file ASPX con un controllo Stylesheet in un form e un controllo utente in un file esterno denominato Mobile_style.ascx in cui sono contenute informazioni sui modelli e sui fogli di stile.

Il controllo StyleSheet viene creato in un file ASPX.

<%@ Page Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
    Namespace="System.Web.UI.MobileControls"
    Assembly="System.Web.Mobile" %>

<mobile:StyleSheet
   id="Style1"
   ReferencePath="Mobile_style.ascx"
   runat="server">
</mobile:StyleSheet>

<mobile:Form id=WelcomeForm runat="server" StyleReference="Style1"
   title="Welcome" >
   <mobile:Label runat="server" Text=" Welcome " StyleReference="title" />
</mobile:Form>

Le definizioni del controllo StyleSheet sono contenute in un file esterno denominato Mobile_style.aspx.

//Code in Mobile_style.ascx ( external stylesheet in a user control).
<Mobile:Stylesheet
runat="server">
   <Style name="Style1">
      <DeviceSpecific>
        <Choice Filter="isHTML32">
         <HeaderTemplate>
            // Add other code or controls here, such as a banner
            // or an AdRotator control.
         </HeaderTemplate>
         <FooterTemplate>
            // Add other code or controls here, such as footers,
            // or a copyright.
         </FooterTemplate>
         </Choice>
      </DeviceSpecific>
   </Style>

   <Style name="Style2">
      <DeviceSpecific>
        <Choice Filter="isWML11">
         <HeaderTemplate>
            // Add other code or controls here.
            // This section would point to WML .wbmp files.
         </HeaderTemplate>
         <FooterTemplate>
            // Add other code or controls here.
            // This section would point to WML .wbmp files.
         </FooterTemplate>
         </Choice>
      </DeviceSpecific>
   </Style>
</Mobile:Stylesheet>

Aggiungere al file web.config in uso le definizioni dei filtri di dispositivo riportate di seguito.

<configuration>
   <system.web>
   <deviceFilters>
      <filter name="isHTML32" compare="PreferredRenderingType" argument="html32" />
      <filter name="isWML11" compare="PreferredRenderingType" argument="wml11" />
   </deviceFilters>
   </system.web>
</configuration>

Vedere anche

Classe StyleSheet | Membri della classe StyleSheet | Riferimenti ai controlli