Procedura: applicare temi ASP.NET
Aggiornamento: novembre 2007
I temi possono essere applicati a una pagina, a un sito Web o a livello globale. L'impostazione di un tema a livello di sito Web comporta l'applicazione di stili e interfacce a tutte le pagine e i controlli del sito, a meno che non venga eseguito l'override di un tema per una singola pagina. L'impostazione di un tema a livello di pagina comporta l'applicazione di stili e interfacce alla pagina e a tutti i relativi controlli.
Per impostazione predefinita, i temi eseguono l'override delle impostazioni dei controlli locali. In alternativa, è possibile impostare un tema come tema del foglio di stile in modo che venga applicato solo alle impostazioni dei controlli non esplicitamente impostate nel controllo.
Per applicare un tema a un sito Web
Nel file Web.config dell'applicazione impostare l'elemento <pages> sul nome del tema, sia esso globale o della pagina, come illustrato nell'esempio seguente:
<configuration> <system.web> <pages theme="ThemeName" /> </system.web> </configuration>
Nota:
Se un tema dell'applicazione ha lo stesso nome del tema dell'applicazione globale, il tema della pagina avrà la precedenza.
Per impostare un tema come tema del foglio di stile e renderlo subordinato alle impostazioni dei controlli locali, impostare invece l'attributo styleSheetTheme:
<configuration> <system.web> <pages styleSheetTheme="Themename" /> </system.web> </configuration>
L'impostazione di un tema nel file Web.config viene applicata a tutte le pagine Web ASP.NET dell'applicazione. Le impostazioni riportate nel file Web.config seguono le normali convenzioni gerarchiche di configurazione. Per applicare un tema solo a un sottoinsieme di pagine, è ad esempio possibile inserire le pagine in una cartella insieme al relativo file Web.config oppure creare un elemento <location> nel file Web.config principale per specificare una cartella. Per informazioni dettagliate, vedere Configurazione di sottodirectory e file specifici.
Per applicare un tema a una singola pagina
Impostare l'attributo Theme o StyleSheetTheme della direttiva @ Page sul nome del tema da utilizzare, come illustrato nell'esempio seguente:
<%@ Page Theme="ThemeName" %> <%@ Page StyleSheetTheme="ThemeName" %>
Il tema con gli stili e le interfacce corrispondenti vengono ora applicati solo alla pagina in cui sono dichiarati.
Applicazione di interfacce ai controlli
Le interfacce definite nel tema vengono applicate a tutte le istanze dei controlli nell'applicazione o nelle pagine a cui viene applicato il tema. In alcuni casi è possibile applicare un insieme specifico di proprietà a un singolo controllo. A tale scopo, creare un'interfaccia denominata (un elemento in un file skin su cui è impostata una proprietà SkinID), quindi applicarla in base all'ID ai singoli controlli.
Per applicare un'interfaccia denominata a un controllo
Impostare la proprietà SkinID del controllo, come illustrato nell'esempio seguente:
<asp:Calendar ID="DatePicker" SkinID="SmallCalendar" />
Se il tema di una pagina non include l'interfaccia di un controllo corrispondente alla proprietà SkinID, il controllo utilizzerà l'interfaccia predefinita per quel tipo di controllo.
Vedere anche
Attività
Procedura: disattivare i temi ASP.NET
Procedura: applicare temi ASP.NET a livello di codice
Concetti
Cenni preliminari su temi e interfacce ASP.NET