Come faccio a cambiare lo sfondo di un masterpage dal codice dietro di una pagina di contenuto?

voti
17

In particolare mi voglio aggiungere lo stile di background-coloral <body>tag di una pagina master, dal codice dietro (C #) di una pagina di contenuto che utilizza tale pagina master.

Ho diverse pagine di contenuti che hanno bisogno per rendere la pagina principale ha colori diversi a seconda di quale pagina di contenuto viene caricato, in modo che la pagina master corrisponde il tema della pagina di contenuto.

Ho una soluzione qui di seguito:


Sto cercando qualcosa di più simile a:

Master.Attributes.Add(style, background-color: 2e6095);

All'interno della funzione di caricamento della pagina della pagina di contenuti. Ma non riesco a ottenere la linea di cui sopra a lavorare. Ho solo bisogno di cambiare il background-colorper il <body>tag della pagina.

È pubblicato 05/08/2008 alle 13:46
fonte dall'utente
In altre lingue...                            


3 risposte

voti
8

Quello che vorrei fare nel caso specifico è:

io. Definire il corpo come un controllo lato server

<body runat="server" id="masterpageBody">

ii. Nella pagina aspx contenuti, registrare il MasterPage con il registro:

<% MasterPageFile="..." %>

iii. Nel contenuto della pagina, è ora possibile utilizzare semplicemente

Master.FindControl("masterpageBody")

e avere accesso al controllo. Ora, è possibile modificare qualsiasi proprietà / stile che ti piace!

Risposto il 05/08/2008 a 13:56
fonte dall'utente

voti
1

Questo è ciò che mi si avvicinò con:

Nella funzione di caricamento della pagina:

HtmlGenericControl body = (HtmlGenericControl)Master.FindControl("default_body");
body.Style.Add(HtmlTextWriterStyle.BackgroundColor, "#2E6095");

Dove

default_body = l'id del tag body.

Risposto il 05/08/2008 a 14:28
fonte dall'utente

voti
0

Credo che si sta parlando di un sistema di gestione dei contenuti. Il modo in cui ho delt con questa situazione in passato è a uno:

  1. Consentire una pagina / contenuti per definire un foglio di stile personalizzato in più o
  2. Consentire una pagina / contenuti per definire tag di stile in linea
Risposto il 05/08/2008 a 13:49
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more