Jak mogę zmienić tło w masterpage z kodu za strony partnerskiej?

głosy
17

I specjalnie chcesz dodać styl background-colordo <body>znacznika strony wzorcowej, z kodu tyłu (C #) o zawartości strony, która wykorzystuje tę stronę wzorcową.

Mam różnych stron, które wymagają, aby strona główna ma różne kolory w zależności od zawartości strony jest załadowany tak, że strona wzorcowa mecze tematyka stronie treści.

Mam rozwiązanie poniżej:


Szukam czegoś więcej takich jak:

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

Wewnątrz funkcji obciążenia stronie zawartości strony. Ale nie mogę się powyżej linii do pracy. I tylko trzeba zmienić background-colordla <body>tagu strony.

Utwórz 05/08/2008 o 13:46
źródło użytkownik
W innych językach...                            


3 odpowiedzi

głosy
0

Wierzę, że mówimy o systemie zarządzania treścią. Sposób, w jaki zostały delt z tej sytuacji w przeszłości jest albo:

  1. Pozwolić na stronę / treści do zdefiniowania dodatkowych niestandardowych stylów lub
  2. Pozwolić na stronę / treść zdefiniować znaczniki stylu inline
Odpowiedział 05/08/2008 o 13:49
źródło użytkownik

głosy
8

Co chciałbym zrobić dla konkretnego przypadku, to:

ja. Zdefiniować ciało jako kontrola po stronie serwera

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

ii. Na stronie aspx zawartości, zarejestruj masterpage z rejestru:

<% MasterPageFile="..." %>

iii. Na stronie partnerskiej, można teraz po prostu użyć

Master.FindControl("masterpageBody")

i mieć dostęp do kontroli. Teraz można zmienić cokolwiek właściwości / style, które lubisz!

Odpowiedział 05/08/2008 o 13:56
źródło użytkownik

głosy
1

To jest to, co ja przyszedłem z:

W funkcji ładowania strony:

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

Gdzie

default_body = identyfikator znacznika ciała.

Odpowiedział 05/08/2008 o 14:28
źródło użytkownik

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