2013-04-15 2 views
0

를 지정 항상 부모 창에서.나는 C#에서 양식을 보여주는 부모 MDI 폼을 지정하려고 부모 MDI 폼

이름을 지정하여 양식을 열고 부모 양식을 내 MDI 부모 양식으로 설정할 수 있기를 원합니다. 내가

'Crux.CruxMDI'가 '형'이다 얻을

this.MdiParent = CruxMDI(); 

C#에서 유사한 것을 시도 할 때 내가

Me.MdiParent = TheNameOfMyParentForm 

을 사용했다 VB.net에서

'변수'처럼 사용됩니다.

+0

'CruxMDI'는 기능입니까? '()'를 제거하지 않으면. – Magnus

+1

'this.MdiParent = TheNameOfMyParentForm; '을 사용하면 어떻게됩니까? –

+0

CruxMDI가 상위 형식입니다. 나는 그 게시물에 타이핑을했다 .. 거기에 없었어야 했어.() 그래서 나는 this.MdiParent = CruxMDI를 시도했다. 'Crux.CruxMDI'는 '유형'이지만 '변수'처럼 사용됩니다. –

답변

1

Form.MdiParent은 구체적인 인스턴스를 참조해야합니다. 따라서 부모 컨테이너에서 여러 개의 부모 창을 허용하지 않으려는 Singleton 패턴을 구현하는 것이 좋습니다. 이렇게하면 필요할 때마다 참조 할 수 있습니다. 자동으로 같은 동작을 추가하려면

this.MdiParent = CruxMDI.Instance; 

을 그것을 당신이 상속 사용자 정의 기본 클래스를 만들 줄 때 옵션을 고려할 수 있습니다, 응용 프로그램에서 여러 형태로 일어날 필요가있다 : 그럼 그냥 입력합니다 형태. 그런 식으로 한번 지정하면 기본 폼 대신이 기본 클래스에서 새 Forms를 상속해야합니다.

어느 쪽이든, MDI 컨테이너의 인스턴스를 참조 할 수있는 메커니즘이 필요합니다.

관련 문제