Avatar billede brianrefshauge Nybegynder
19. december 2007 - 11:22 Der er 6 kommentarer

Brug af Usercontrol i winforms

Jeg ønsker at benytte en usercontrol dynamisk på en winform. Alt afhængig af antallet af objekter i en collection skal den genererer en userkontrol pr. objekt og blot liste usercontrollerne under hinanden. Jeg har forsøgt at benytte et panel til at indeholde usercontrollerne og blot tilføje min usercontroller via add(), men jeg kan ikke få den til automatisk at liste dem under hinanden. Jeg har engang lavet tilsvarende i ASP.NET hvor jeg benyttede en placeholder og blot tilføjede usercontrollen via add().

Eks.:

foreach (Person p in List<Person>)
{
  UserControl uc = new UserControl(p);
  panel1.controls.add(uc);
}
Avatar billede clausc Nybegynder
19. december 2007 - 12:15 #1
Du er SVJV nødt til at sætte top property'en selv. Men flg. burde virke:
int t = 0;
foreach (Person p in List<Person>)
{
  UserControl uc = new UserControl(p);
  uc.Top = t;
  t += uc.Height;
  panel1.controls.add(uc);
}
Avatar billede brianrefshauge Nybegynder
19. december 2007 - 22:31 #2
Det virkede, nu har jeg så bare lidt bøvl med at få panelet til at påsætte en scroll bar hvis der er flere usercontrols end der er plads til...nogen ide til dette, jeg har sat property autoscroll til true.
Avatar billede brianrefshauge Nybegynder
19. december 2007 - 22:33 #3
Jeg ved iøvrigt ikke hvordan jeg giver dig point herinde for dit svar??
Avatar billede clausc Nybegynder
19. december 2007 - 22:45 #4
Mht scrollbar:
Hmm; prøv at kalde panel1.Refresh() efter løkken.

Mht points:
Jeg skal markere indlæg som 'svar'; men går ikke så meget op i det. Men dette er et 'svar' som du kan belønne =)
Avatar billede brianrefshauge Nybegynder
19. december 2007 - 23:07 #5
Super tak for hjælpen, det virker nu.
Avatar billede brianrefshauge Nybegynder
09. februar 2008 - 16:19 #6
.
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