
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:
//Form 1 heeft dus een button met volgend Click event
private void Button1Click(object sender, EventArgs e)
{
//Je zet de Owner van de tweede form op de huidige
//Dit is om vanuit je tweede form gemakkelijk terug te
//kunnen refereren naar deze form
var f2 = new Form2 { Owner = this };
//De tweede form openen
f2.Show();
//De huidige form verbergen
Hide();
}
//Form 1 heeft dus een button met volgend Click event private void Button1Click(object sender, EventArgs e) { //Je zet de Owner van de tweede form op de huidige //Dit is om vanuit je tweede form gemakkelijk terug te //kunnen refereren naar deze form var f2 = new Form2 { Owner = this }; //De tweede form openen f2.Show(); //De huidige form verbergen Hide(); }
Code voor de tweede form:
//Form 2 heeft volgend event wanneer deze gesloten wordt
private void Form2FormClosing(object sender, FormClosingEventArgs e)
{
//Je gaat de Owner (Form 1) terug tonen
Owner.Show();
//Na het uitvoeren van bovenstaande regel wordt Form 2 gesloten
}
//Form 2 heeft volgend event wanneer deze gesloten wordt private void Form2FormClosing(object sender, FormClosingEventArgs e) { //Je gaat de Owner (Form 1) terug tonen Owner.Show(); //Na het uitvoeren van bovenstaande regel wordt Form 2 gesloten }
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:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim f2 As New Form2()
f2.Owner = Me
f2.Show()
Hide()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim f2 As New Form2() f2.Owner = Me f2.Show() Hide() End Sub
2e form:
Private Sub Form2_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
Owner.Show()
End Sub
Private Sub Form2_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing Owner.Show() End Sub
|