방법: MDI 부모 창에 MenuStrip 추가(Windows Forms)
일부 응용 프로그램에서는 MDI(다중 문서 인터페이스) 자식 창의 종류가 MDI 부모 창의 종류와 다를 수 있습니다. 예를 들어, MDI 부모는 스프레드시트인데 MDI 자식은 차트일 수 있습니다. 이 경우 여러 종류의 MDI 자식 창이 활성화되어 있을 때 MDI 부모 메뉴의 내용을 MDI 자식 메뉴의 내용으로 업데이트해야 할 수 있습니다.
다음 절차에서는 IsMdiContainer, AllowMerge, MergeAction 및 MergeIndex 속성을 사용하여 MDI 부모 메뉴에 MDI 자식 메뉴를 추가합니다. MDI 자식 창을 닫으면 추가한 메뉴가 MDI 부모 메뉴에서 제거됩니다.
자세한 내용은 다음을 참조하십시오. MDI 응용 프로그램 및 MDI 응용 프로그램 및 MDI 응용 프로그램 및 MDI 응용 프로그램.
MDI 부모 메뉴에 메뉴 항목을 추가하려면
폼을 만들고 IsMdiContainer 속성을 true로 설정합니다.
Form1에 MenuStrip을 추가하고 MenuStrip의 AllowMerge 속성을 true로 설정합니다.
&File 메뉴 항목에 하위 메뉴 항목을 추가하고 Text 속성을 &Open으로 설정합니다.
프로젝트에 폼을 추가하고 폼에 MenuStrip을 추가한 다음 Form2 MenuStrip의 AllowMerge 속성을 true로 설정합니다.
&Special 메뉴 항목에 두 개의 하위 메뉴 항목을 추가하고 Text 속성을 각각 Command&1과 Command&2로 설정합니다.
&Special, Command&1 및 Command&2 메뉴 항목의 MergeAction 속성을 Append로 설정합니다.
&New ToolStripMenuItem의 Click 이벤트에 대한 이벤트 처리기를 만듭니다.
이벤트 처리기에서 Form2의 새 인스턴스를 Form1의 MDI 자식 폼으로 만들고 표시하는 다음 코드 예제와 비슷한 코드를 삽입합니다.
Private Sub openToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles openToolStripMenuItem.Click Dim NewMDIChild As New Form2() 'Set the parent form of the child window. NewMDIChild.MdiParent = Me 'Display the new form. NewMDIChild.Show() End Sub
[C#]
private void openToolStripMenuItem_Click(object sender, EventArgs e) { Form2 newMDIChild = new Form2(); // Set the parent form of the child window. newMDIChild.MdiParent = this; // Display the new form. newMDIChild.Show(); }
&Open ToolStripMenuItem에 다음 코드 예제와 비슷한 코드를 넣어 이벤트 처리기를 등록합니다.
Private Sub openToolStripMenuItem_Click(sender As Object, e As _ EventArgs) Handles openToolStripMenuItem.Click
this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);
코드 컴파일
이 예제에는 다음 사항이 필요합니다.
두 개의 Form 컨트롤 Form1 및 Form2
Form1의 MenuStrip 컨트롤 menuStrip1 및 Form2의 MenuStrip 컨트롤 menuStrip2
System 및 System.Windows.Forms 어셈블리에 대한 참조