윈도우 폼(Windows Forms) 응용을 MDI(Multiple Document Interface) 형태로 만들면 하나의 윈도우 폼이 부모폼(Parent Form)이 되고 여러개의 자식폼을 내장하는 방식으로 편리한 창 관리, 예를 들어 타일 방식으로 창을 자동 배열하거나 연속 형태(Cascade)로 창을 간단하게 배열할 수 있습니다. 그런데 이런 형태의 창 배열을 사용하지 않고 부모폼의 작업 영역에 한번에 하나의 폼만을 표시하려고 하면 몇가지 설정이 필요합니다. 분명 자식폼으로 사용할 폼의 ControlBox 속성을 False로 설정했지만 위의 그림과 같이 자식폼이 부모 폼의 작업 영역에 꽉차도록 WindowState 속성을 Maximized로 설정하면 컨트롤 박스가 보이고 맙니다. 폼 클래스에 Do..
여러개의 폼을 가진 다중 폼 응용의 또 다른 형태가 MDI(Multiple-Document Interface) 응용입니다. 대표적인 것이 비주얼스튜디오인데 하나의 메인 폼이 여러개의 자식 폼을 소유하는 형태로 관리합니다. 비주얼스튜디오 내부에 코드 편집창도 있고, 속성창, 솔루션 창과 디자인창도 소유하면서 이들 창의 배치와 관리를 통제하는 것과 같은 응용 프로그램을 MDI 응용이라 합니다.MDI 응용 만들기는 그리 복잡하지 않습니다. 부모 역할을 할 폼의 IsMdiContainer 속성을 아래의 그림과 같이 True로 설정하면 나머지 자식 폼들은 부모 폼의 영역 내에서 Show(), Hide()로 보이거나 숨길 수 있습니다. 예제에서는 부모 폼이 로드되면서 자식 폼을 Show() 메소드로 보이는데 이때 ..