How to Close Parent Form from Child Form in Windows Forms 2.0
Posted by: Suprotim Agarwal ,
on 3/13/2008,
in
Category WinForms & WinRT
Abstract: With the MSDN forums flooded with similar questions, I decided to dedicate an article for the subject. In this article, we will create two forms, a parent and a child and then open the child form using the Parent Form. When the child form closes, we will close the Parent form too.
How to Close Parent Form from Child Form in Windows Forms 2.0
With the MSDN forums flooded with similar questions, I decided to dedicate an article for the subject. In this article, we will create two forms, a parent and a child and then open the child form using the Parent Form. When the child form closes, we will close the Parent form too. Let us see how.
Step 1: Create a new Windows application. Open Visual Studio 2005 or 2008. Go to File > New > Project > Choose Visual Basic or Visual C# in the ‘Project Types’ > Windows Application. Give the project a name and location > OK.
Step 2: Add a new form to the project. Right click the project > Add > Windows Forms > Form2.cs > Add.
Step 3: Now in the Form1, drag and drop a button ‘btnOpenForm’ and double click it to generate an event handler. Write the following code in it. Also add the frm2_FormClosed event handler as shown below:
C#
private void btnOpenForm_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.FormClosed += new FormClosedEventHandler(frm2_FormClosed);
frm2.Show();
this.Hide();
}
private void frm2_FormClosed(object sender, FormClosedEventArgs e)
{
this.Close();
}
VB.NET
Private Sub btnOpenForm_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim frm2 As Form2 = New Form2()
AddHandler frm2.FormClosed, AddressOf frm2_FormClosed
frm2.Show()
Me.Hide()
End Sub
Private Sub frm2_FormClosed(ByVal sender As Object, ByVal e As FormClosedEventArgs)
Me.Close()
End Sub
The trick in this code is to create the FormClosedEventHandler delegate which represents the method that handles a FormClosed event, in our case, for Form2. We then subscribe to this event. So whenever Form2 closes, we close the parent form Form1 too.
That’s it. That was simple. Thanks to a guy called Anderj who shared this idea.
I hope you liked the article and I thank you for viewing it.
If you liked the article, please subscribe to the RSS feed over here.
This article has been editorially reviewed by Suprotim Agarwal.
C# and .NET have been around for a very long time, but their constant growth means there’s always more to learn.
We at DotNetCurry are very excited to announce The Absolutely Awesome Book on C# and .NET. This is a 500 pages concise technical eBook available in PDF, ePub (iPad), and Mobi (Kindle).
Organized around concepts, this Book aims to provide a concise, yet solid foundation in C# and .NET, covering C# 6.0, C# 7.0 and .NET Core, with chapters on the latest .NET Core 3.0, .NET Standard and C# 8.0 (final release) too. Use these concepts to deepen your existing knowledge of C# and .NET, to have a solid grasp of the latest in C# and .NET OR to crack your next .NET Interview.
Click here to Explore the Table of Contents or Download Sample Chapters!
Was this article worth reading? Share it with fellow developers too. Thanks!
Suprotim Agarwal, MCSD, MCAD, MCDBA, MCSE, is the founder of
DotNetCurry,
DNC Magazine for Developers,
SQLServerCurry and
DevCurry. He has also authored a couple of books
51 Recipes using jQuery with ASP.NET Controls and
The Absolutely Awesome jQuery CookBook.
Suprotim received the prestigious Microsoft MVP award for 17 consecutive years, until he resigned from the program in 2025. In a professional capacity, he is the CEO of A2Z Knowledge Visuals Pvt Ltd, a digital group that offers Digital Marketing and Branding services to businesses, both in a start-up and enterprise environment.
Get in touch with him on Twitter @suprotimagarwal or at LinkedIn