Avatar billede filix Nybegynder
07. august 2009 - 10:10 Der er 5 kommentarer og
1 løsning

Kan ikke oprette flere dynamiske kontroller efter hinanden

Hejsa Xperts

Jeg er ved og lave en side hvor du kan tilføje en sports hal, ideen er så at man skal tilføje de baner man har brug for. Som standard er der en bane tilføjet også klikker man på en knap og en ekstra bane kommer osv.

Men efter den har tilføjet en ekstra bane og man klikker igen erstatter den bare den anden... og jeg kan virkelig ikke finde fejlen, alle kontrollerne bliver dannet med unikke id'er.
tingene bliver tilføjet et panel.

neden under er koden der til. Det er når man klikker en knap laver den 3 labels der bliver brugt til og smide lidt styling i (tables), og 2 textfelter til informationen.

så for de tildelt unikt id og til sidst tilføjet et statisk dannet panel som jeg bruger som container.
--------------------------------------------------------------
//I pageload sætter jeg en session
Session["CourtCounter"] = "2";
//bliver brugt til og lave dynamiske id'er
--------------------------------------------------------------
protected void btnAddExtraCourt_Click(object sender, EventArgs e)
    {
       
       
            int courtCounter = int.Parse(Session["CourtCounter"].ToString());


            Label lblExtraCourtDesignStart = new Label();
            lblExtraCourtDesignStart.ID = "lblExtraCourtDesignStart" + courtCounter.ToString();
            Label lblExtraCourtDesignMid = new Label();
            lblExtraCourtDesignMid.ID = "lblExtraCourtDesignMid" + courtCounter.ToString();
            Label lblExtraCourtDesignEnd = new Label();
            lblExtraCourtDesignEnd.ID = "lblExtraCourtDesignEnd" + courtCounter.ToString();

            TextBox txtCourtName = new TextBox();
            txtCourtName.ID = "txtCourtName" + courtCounter.ToString();

            TextBox txtCourtComment = new TextBox();
            txtCourtComment.ID = "txtCourtComment" + courtCounter.ToString();
            txtCourtComment.TextMode = TextBoxMode.MultiLine;

            lblExtraCourtDesignStart.Text = "<tr valign='top'><td>Bane Navn</td><td>:</td><td>";
            lblExtraCourtDesignMid.Text = "</td><td>Kommentar</td><td>:</td><td>";
            lblExtraCourtDesignEnd.Text = "</td>";

           
            pnlAllCourts.Controls.Add(lblExtraCourtDesignStart);
            pnlAllCourts.Controls.Add(txtCourtName);
            pnlAllCourts.Controls.Add(lblExtraCourtDesignMid);
            pnlAllCourts.Controls.Add(txtCourtComment);
            pnlAllCourts.Controls.Add(lblExtraCourtDesignEnd);

            courtCounter++;
            Session["CourtCounter"] = courtCounter.ToString();
       
    }
--------------------------------------------------------------

har prøvet det meste synes jeg og kan ikke rigtig finde en vej ud.
Avatar billede mbm2016 Nybegynder
07. august 2009 - 10:33 #1
Jeg ved det self. ikke men kunne de være fordi de lagde sig ovenpå hinanden?
Avatar billede filix Nybegynder
07. august 2009 - 10:40 #2
jeg har godt tænkt det samme men normalt når jeg har brugt et panel et andet sted og kontrollernes id'er ikk er ens plejer den bare og udvide med det skidt som bliver kastet i den...
Avatar billede sirius Nybegynder
07. august 2009 - 11:30 #3
Når du dynamisk tilføjer controls bliver de ikke husket til næste gange. Altså hver gang du trykker på knappen AddExtraCourt bliver de tidligere tilføjet controls glemt. Så du skal gemme hvor mange der er tilføjet og så ved hvert PageLoad tilføje dem igen.
Avatar billede filix Nybegynder
07. august 2009 - 11:49 #4
hmm der kunne snildt være noget om snakken der sirius :) tager lige en kigger og vender tilbage :D
Avatar billede filix Nybegynder
10. august 2009 - 11:13 #5
super jeg fik det til hvis du vil hafve lidt points sirius så bar opret et svar ellers lukker jeg den bare :D
Avatar billede sirius Nybegynder
16. august 2009 - 17:20 #6
svar :)
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