21. april 2005 - 13:53Der er
12 kommentarer og 2 løsninger
Skift mellem visning af 2 User Controls
Hejsa har lige brug for lidt hjælp.
Har en aspx side og ønsker at lave det sådan at når jeg trykker på knap 1, vises User Control 1 mens hvis jeg trykker på knap 2 vises User Control 2 og User Control 1 forsvinder.
Ser helst det laves i Code Behind og jeg koder i C#
UserControl har en egenskab der hedder Visible (denne nedarves fra klassen Control) - Denne sætter du til false på begge UserControls. Så er det bare at ændre denne egenskab i de to knappers Click event.
gulbaek>> går ud fra du har placeret UserControl:Toppen på din aspx-side
på din codebehind skal du nu have lavet et field i din klasse for at få adgang til din usercontrol. Dette field skal have samme type og id som useronctrollen. Du skal desuden huske at dette field skal være synligt for aspx-klassen, protected peler at være fint. Når du har gjort det har du nu adgang til din usercontrol fra din codebehind.
Jeg er selv ved at lave et site hvor jeg skal bruge forskellige usercontrols på samme side alt efter forskellige options. Jeg har lavet en place holder hvor jeg så loader min kontrol ind i. Denne løsning er også ret lige til alt efter hvordan man bestemmer hvilken der skal loades. Jeg har f.eks. en switch hvor jeg så caser på hvilken værdi en variable har og kan så kalde LoadControl i de forskellige cases med forskellige kontroller. Det ser umiddelbart ud til at køre ok. Men skriv da endelig en kommentar ;)
Jeg skulle lige have fundet koden frem fra mine gemmer, da jeg selv bruger noget lignende på min hjemmeside. Herunder kommer et eksempel, der virker. Der bruges dog IKKE CodeBehind, så ved ikke om du kan bruge det til noget:
Henrikgn, du kunne ikke tænke dig at vise eksemplet, hvor det bruger codebehind, er nemlig ikke den største fan at at placere for meget kode i aspx filerne.
Og fed hjemmeside du har, fandt nogle dejlig pinlige billeder af René(læste datamatiker sammen), så nu kan jeg bruge det som lidt afpresning :-)
gulbaek>> grunden til at du får en null-reference exception er fordi at id'erne på aspx-siden og i din codebehind ikke stemmer overens. Prøv at tjek en ekstra gang om du har stavet forkert eller lign.
gulbaek, jeg har desværre ikke megen forstand på codebehind, da jeg har det fint med kode og html i en stor pære-vælling :) Så håber en anden kan hjælpe dig der.
hehe, ja der er helt sikkert nogen belastende billeder at finde af René derinde... så bare afpres ham! :)
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.