Multiple Document Interface (MDI) Form

Bubbly
Posted by in Windows Forms category on for Beginner level | Views : 13014 red flag

This article describes sample usage of MDI form.
Introduction
 

Multiple Document Interface (MDI) form –

MDI form closely resembles a standard form with one major difference – the client area of an MDI form acts as a kind of container for other forms. It means that an MDI form also called an MDI parent form, can display MDI children in it, which is how the multiple document interfaces work.

Creating MDI Applications :

MDI forms are useful when the users want to open more than one document at a time.

























Creating MDI Child Windows in Code :

For adding MDI child windows into our MDI parent form, first I’ll create a form class MDIChild and then i’ll create MDI child windows by creating and displaying a new object of the class each time the user clicks on New Option in File Menu bar in application. To make that new form object a child window of the MDI parent, MDIparent, we have to set its MdiParent property to the main window which also sets its IsMdiChild property to True. For working with number of child windows we need to store them in a array of forms.

Steps :

1. Add RichtextBox to MDIChild (to second form)

2. Set Dock property of Richtextbox to fill by clicking on the square shaped button in the properties window









3. Add following code in MDIParent.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace MyWinForms

{

public partial class MDIParent : Form

{

int NumberofForms = 0;

MDIChild[] Forms = new MDIChild[11];

public MDIParent()

{

InitializeComponent();

}

private void MDIParent_Load(object sender, EventArgs e)

{

}

private void newToolStripMenuItem_Click(object sender, EventArgs e)

{

NumberofForms +=1;

Forms[NumberofForms] = new MDIChild();

Forms[NumberofForms].Text = "Document" + Convert.ToString(NumberofForms);

Forms[NumberofForms].MdiParent = this;

Forms[NumberofForms].Show();

}

}

}

4. Finally Run the application. Click on File -> New



























Page copy protected against web site content infringement by Copyscape

About the Author

Bubbly
Full Name: Deepika Haridas
Member Level: Bronze
Member Status: Member
Member Since: 9/14/2009 10:33:08 AM
Country: India
++ Thanks & Regards, Deepika
http://www.angeldeeps.blogspot.com
Software Engineer

Login to vote for this post.

Comments or Responses

Login to post response

Comment using Facebook(Author doesn't get notification)