Avatar billede Lars Søndergaard Nybegynder
16. februar 2006 - 21:02 Der er 5 kommentarer og
1 løsning

winform menustrip

jeg har en form1 med en menustrip. min form1 er mdicontainer. når jeg vælger et punkt i min menu vil jeg have at en anden form vises. den anden form nedarver fra form1. hvordan kan jeg vise den anden form, så den ligesom bliver synlig i stedet for form1. Hos mig bliver den enten oprettet som en ekstra form eller inden i form1 :-(
Avatar billede aaberg Nybegynder
17. februar 2006 - 08:43 #1
Dette kan gøres på forskellige måder, alt efter hvad meningen er med det.

1. metode.
I din Main() metode, startes din form med sætningen "Application.Run(new Form1());". I stedet for at starte en form, kan man starte en ApplicationContext. Dette er en klasse du kan nedarve fra. I denne klasse er der en property der hedder "MainForm", denne property skal indeholde den form som skal være åben. Ved at styre dette fra en ApplicationContext, slipper du for at dit message loop stopper når du lukker din form.

2. metode.
Hvis den form som starter med at være din hovedform, statigvæk skal være din hovedform efter du har vist den nye form, kan du bruge denne kode:

Form2 f = new Form2();
f.Show();
this.Hide();

På denne måde kan du skjule din nuværende form, og åbne den nye form. På denne måde vil den form du skjuler stadig være åben (Og indeholde dit programs message loop), så du bliver nød til at lukke formen med Form.Close() eller Application.Exit() når du vil lukke programmet.

Metode 3.
Hvis du vil opnå samme resultat som i metode 1, men uden at bruge en ApplicationContext, kan du gøre følgende: Start en ny tråd. I denne tråd skriver du:

Form2 f = new Form2();
Application.Exit();
Application.Run(f);

Først lukkes den eksisterende message loop, hvilket resulterer i at din første form lukkes. Derefter startes en ny, med din nye form.
Avatar billede Lars Søndergaard Nybegynder
07. december 2007 - 14:34 #2
aaberg80 - kom med et svar
Avatar billede aaberg Nybegynder
10. december 2007 - 08:57 #3
tak :-)
Avatar billede aaberg Nybegynder
19. juni 2008 - 21:56 #4
Jeg ved at dette er et oldgammelt spørgsmål, men jeg er i gang med at rydde lidt op i spørgsmål jeg deltager i. Har du mulighed for at acceptere svaret?
Avatar billede aaberg Nybegynder
21. november 2008 - 15:37 #5
subtile?
Avatar billede Lars Søndergaard Nybegynder
21. november 2008 - 18:04 #6
naturligvis :)
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