23. juli 2006 - 20:13Der er
7 kommentarer og 1 løsning
Brug af ImageUrl
Hey...
jeg har et billede i min masterpage jeg gerne vil have udskiftet til et forskelligt billede for hver content page...hvordan ville i vælge at gøre dette?
Har set der findes en ad-rotater...men har ikke prøvet at bruge den før...er den at foretrække?
Jeg har prøvet at skive følgende kode i load metoden på en content page...men uden held...billedet vises ikke...?-(
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Sæt ImageUrl på billedet som en property på din masterpage:
public string HeaderImage { get{return Image1.ImageUrl;} set{Image1.ImageUrl = value;} }
Så kan du skrive til den fra din contentpage - enten ved at typecaste this.Master til din specifikke mastertype, eller ved at angive et MasterType directive i din aspx på contentsiden.
property'en er jeg med på...men kan de vise eks. på i kode hvordan jeg bruger den...er total newbie i asp...men kun til winforms...:) og kan ikke lige få det til at spille...
ok ... hvis du på din master har bemeldte property, så kan du nå den sådan her "direkte": (Hvis vi antager at din master hedde SomeMaster)
// på din contentpage: ((SomeMaster)this.Master).HeaderImage = "...";
Den anden mulighed er, at du deklarativt kan forklare kompileren hvilken type din masterpage er (for en given contentpage). Det kan du gøre i din aspx-fil sådan her:
<%@ MasterType VirtualPath="samme path som du har stående i masterpagefil i dit pagedirective" %>
Så reflekteres typen direkte (også af intellisense) så du kan nøjes med at skrive: this.Master.HeaderImage = "..";
Du kan også gennemtvinge typen for alle sider i web.config.
Nu gør du mig jo nysgerrig...hvordan vil det se ud i web.config'en? det ville faktisk være det smarteste i mit tilfælde, idet at jeg blot har én master page...men man kan måske også godt angive hvilke contentpages som skal kende en given masterpage, hvis man nu fx. har flere masterpages...?
Du kan angive sådan en her under <system.web> i web.config. <pages masterPageFile="..." /> Så er der fælles master, men MasterType kan desværre ikke angives i web.config. Hvis du har flere masterpages, så må du angive den for hver content side, og angive type n for de sider hvor du ønsker at tilgå properties på din master. Mvh
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.