Avatar billede maude Nybegynder
17. maj 2007 - 14:53 Der er 5 kommentarer og
1 løsning

PlaceHolder på MasterPage

Jeg har en PlaceHolder på en MasterPage som indeholder en label.
Jeg vil gerne ændre indholdet af labelen (text-propertien) fra de undersider der anvender MasterPagen.

Hvordan gør jeg det?

Jeg anvender C# hvis det har nogen betydning.
Avatar billede karsten_larsen Praktikant
17. maj 2007 - 15:07 #1
Noget i denne stil

public partial class demo: System.Web.UI.MasterPage
{
public Label lblqty = new Label();
}



protected void Page_Load(object sender, EventArgs e)
{
((demo)Master).lblqty.Text = "Hej";
}

:-) karsten_larsen
Avatar billede maude Nybegynder
17. maj 2007 - 18:02 #2
Tja, men nu står der "Hej" på alle sider der anvender Masterpagen. Jeg ville jo netop variere teksten afhængig af "undersiden". Desuden vil jeg gerne anvende en PlaceHolder.
Avatar billede neoman Novice
17. maj 2007 - 18:08 #3
det er UNDERSIDENS page load hvor

protected void Page_Load(object sender, EventArgs e)
{
((demo)Master).lblqty.Text = "Hej";
}
skal være jo - og det er jo et "hello world"-type  eksempel, hvor du så sætter egen tekst ind i stedet for "Hej" på hver underside
Avatar billede neoman Novice
17. maj 2007 - 18:16 #4
og i VB skal man placere dette page directive i undersidens aspxfil
<%@ MasterType virtualpath="~/navn_på_din_master_fil.master" %> for at kunne tilgå masterns elementer - det gældervel også for c#
Avatar billede maude Nybegynder
17. maj 2007 - 19:43 #5
Jeg vil undlade at kommentere på bemærkningen om "Hello World"-type eksemplet!!!!

I C# skal masterpagen også angives i undersidens aspx-fil. Jeg bruger Visuel Studio og her er det muligt at angive hvilken masterpage der ønskes anvendt idet en undersides oprettes.

Ved kontrol står der ganske rigtigt:
<%@ Page Language="C#" MasterPageFile="~/MasterPageDemo.master"

så den del skulle være i orden.

Problem: Jeg har ikke adgang til min label på masterpagen fra undersidens Page_load.
Avatar billede maude Nybegynder
17. maj 2007 - 22:14 #6
Label lblqty;
lblqty = (Label)Master.FindControl("lblHeading");    // ID fra label på masterpage
lblqty.Text = "Denne tekst bestemmes af Default1.aspx";
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester