Avatar billede nielsen2002 Nybegynder
19. december 2006 - 11:58 Der er 8 kommentarer og
1 løsning

Command Argument i Tabel

Jeg har et problem med at fange et Argument. Jeg lave programelt en tabel med noget indhold.

Jeg laver en Celle med denne stump kode

            tc[8] = new TableCell();
            LinkButton link = new LinkButton();           
            link.CommandName = "RemoveItem";
            link.CommandArgument = Convert.ToString(kurvID);
            link.Text = "Slet";             
            tc[8].Controls.Add(link);

            tr.Cells.AddRange(tc);
            t.Rows.Add(tr);

Jeg er så lidt usikker på hvordan jeg fanger værdien i
link.CommandArgument når man klikke på knappen, jeg har:

protected void RemoveItem(Object sender, CommandEventHandler eh, CommandEventArgs e) {
        Button btn;
        btn = (Button)sender;
        Response.Write("|"+ btn.CommandArgument +"|");     
    }

Men jeg får ingen værdi ud. hvad er der galt?
Avatar billede thrytter Nybegynder
19. december 2006 - 14:31 #1
Gætter på, at den manglende funktionalitet skyldes, at din LinkButton bliver tilføjet dynamisk, og derfor skal tilføjes til kontroltræet ved hvert postback.

Vil foreslå, at du bruger en DataList eller DataGrid med tilhørende rækker som indeholder en sletteknap som kun er synlig efter behov.
Avatar billede nielsen2002 Nybegynder
19. december 2006 - 15:02 #2
Det er ikke helt det Svar jeg søger, jeg vil jo helst ha' det til at fungere sådan som det er nu, hvis det er muligt.

Hvis det du skriver er den eneste mulighed får du selvfølgelig kage :)
Avatar billede thrytter Nybegynder
19. december 2006 - 17:24 #3
Du kommer nok ikke uden om første del af mit svar.
Avatar billede mikkel_strack Nybegynder
20. december 2006 - 13:55 #4
Det er ikke lige til at gennemskue om der skal tilføjes kontroller ved postbacks - hvis det er tilfældet, så er problemstillingen som thrytter skriver.

I så fald har Dennis Bauer har lavet en dynamic placeholder som du måske kan bruge. http://www.denisbauer.com/ASPNETControls/DynamicControlsPlaceholder.aspx

Såfremt der ikke skal tilføjes kontroller ved postbacks, så er det lidt mindre bøvlet hvis du indsætter dem OnInit
Avatar billede nielsen2002 Nybegynder
21. december 2006 - 15:42 #5
Hej Mikkel
Avatar billede nielsen2002 Nybegynder
21. december 2006 - 15:51 #6
Min problemstilling har ændret sig lidt, nu skal jeg kun tilføje en knap til min tabel, en "Opdater Kurv" knap.

Min tabel indeholder:

En header række med kolonne overskrifter,
X antal rækker med produkter, med et textfelt man kan indtastet et tal i.
en Footer række med noget udregning af total pris ol.

i min footer række vil jeg gerne indsætte en knap der kan Opdatere kurven.

Jeg har prøvet at flytte min GenereTabel funktion til OnInit, men så vises den ikke på siden.

min kode der generere min tabel ser sådan her ud: (her er bare lidt af den)

            // Opret Tabel
            Table t = new Table();
            // Sæt værdier
            t.CssClass = "BestillingsTabel";
            t.CellPadding = 0;
            t.CellSpacing = 1;
            t.Width = Unit.Percentage(100);

            // Opret Header række
            TableRow trheader = new TableRow();
            trheader.CssClass = "Header";

            // Opret celler til Header rækken
            TableCell[] tcheader = new TableCell[9];
            tcheader[0] = new TableCell();
            tcheader[0].Width = Unit.Pixel(55);
            tcheader[0].Text = "VareNr";
           
            ... 

            // Tilføj Celler til rækken, og Rækken til Tabellen
            trheader.Cells.AddRange(tcheader);
            t.Rows.Add(trheader);

    Sådan laver jeg sådan set alle mine Celler og rækker.
   
    Men hvordan kan jeg i min footer række indsatter en knap som kan udføre en ASP funktion.
Avatar billede nielsen2002 Nybegynder
21. december 2006 - 16:17 #7
Fandt Løsningen.

Min funktion skulle køre i Page_Init.

Og jeg skulle erklære min Eventhandler før jeg referere til den i min kode.

Så jeg lukker her,

Mikkel Du sendte med på rette spor med linket, så du får point :)
Avatar billede mikkel_strack Nybegynder
21. december 2006 - 18:33 #8
Godt det kom til at virke :o)

Mit bidrag er vist ikke 100 point værd, så du kan gi' mig 30 og beholde de resterende.

God jul
Avatar billede nielsen2002 Nybegynder
22. december 2006 - 08:32 #9
Skidt pyt, God jul.
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