login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Visual Studio 2010 express forms openen (Opgelost)

Offline IndexS - 21/07/2011 16:54
Avatar van IndexSMySQL interesse Ik moet voor een projectje even iets simpels in Visual Studio 2010 express maken. Nu bevat het programma meerdere forms. Het 1e form heeft de nodige knoppen waarmee andere forms geopend worden. Nu wil ik echter dat als ik op een knop druk het form op exact dezelfde plek geopend wordt als het 1e form en dat het 1e form eventueel verborgen wordt. Ik werk verder niet met dit programma dus het is voor mij niet helemaal duidelijk hoe ik dat voor elkaar kan krijgen.

Alvast bedankt!

4 antwoorden

Gesponsorde links
Offline Abbas - 21/07/2011 19:47
Avatar van Abbas Gouden medaille

Crew .NET
Zorg ervoor dat je hoofdform in het midden van het scherm geopend wordt. Dit doe je door de property 'StartPosition' op 'CenterScreen' te zetten. Bij de andere forms doe je hetzelfde waardoor ze allemaal in het midden van het scherm geopend worden.

Een form kan je verbergen door de Hide() methode te gebruiken, voorbeeld:

  1. //'this' is de huidige form
  2. this.Hide();
Bedankt door: IndexS
Offline IndexS - 21/07/2011 23:36
Avatar van IndexS MySQL interesse Dank je voor het antwoord.
Het werkt prima.

Is het ook mogelijk om een form automatisch weer weer te geven als een andere form weer gesloten wordt? Dan bedoel ik niet het afsluiten met een knop, maar als er op het kruisje geklikt wordt op een form?

Dus form1 heeft wordt verborgen als form2 geopend wordt. Nu wordt er niet op een knop geklikt om form2 af te sluiten maar op de kruis recht boven aan de form. Dan zou het mooi zijn als form1 automatisch weer na voren komt.

Alvast bedankt!
Offline Abbas - 23/07/2011 16:47 (laatste wijziging 23/07/2011 16:56)
Avatar van Abbas Gouden medaille

Crew .NET
Dit is zeker mogelijk, je moet het sluiten van de tweede form opvangen in een event, namelijk het FormClosing event. In Designer mode van je form kijk je bij de properties window bij events en maak je een event voor 'FormClosing'. Hieronder een voorbeeldje met de code voor de twee forms.

Code voor de eerste form:
  1. //Form 1 heeft dus een button met volgend Click event
  2. private void Button1Click(object sender, EventArgs e)
  3. {
  4. //Je zet de Owner van de tweede form op de huidige
  5. //Dit is om vanuit je tweede form gemakkelijk terug te
  6. //kunnen refereren naar deze form
  7. var f2 = new Form2 { Owner = this };
  8. //De tweede form openen
  9. f2.Show();
  10. //De huidige form verbergen
  11. Hide();
  12. }

Code voor de tweede form:
  1. //Form 2 heeft volgend event wanneer deze gesloten wordt
  2. private void Form2FormClosing(object sender, FormClosingEventArgs e)
  3. {
  4. //Je gaat de Owner (Form 1) terug tonen
  5. Owner.Show();
  6. //Na het uitvoeren van bovenstaande regel wordt Form 2 gesloten
  7. }

That's all there is to it! 

Edit:
Ik had niet gezien dat het topic in de categorie VB.NET stond. Hieronder staat de code in VB.NET, de uitleg in commentaar blijft hetzelfde.

1e form:
  1. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  2.  
  3. Dim f2 As New Form2()
  4. f2.Owner = Me
  5. f2.Show()
  6. Hide()
  7.  
  8. End Sub

2e form:
  1. Private Sub Form2_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
  2.  
  3. Owner.Show()
  4.  
  5. End Sub
Bedankt door: IndexS
Offline IndexS - 25/07/2011 13:42
Avatar van IndexS MySQL interesse Ook dat werkt weer super!

Bedankt!
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.203s