2013-10-15 1 views
0
내가 문제

MDI 폼 - CentreParent

내가 부모 폼의 Load() 이벤트에 다음 코드를 넣어 시도 부모 폼의 중심에 자식 폼을 얻는 데

-

frmSplash frmS = new frmSplash(); 
frmS.MdiParent = this; 
frmS.StartPosition = FormStartPosition.CenterParent; 
frmS.Show(); 

또한 Visual Studio에서 CentreParent를 기본값으로 사용하여 Child Form의 속성을 설정해 보았습니다.

그러나 하위 폼은 항상 부모 폼의 왼쪽 위 모서리에 나타나며 그 이유는 해결할 수 없습니다.

누구든지 내가 뭘 잘못하고 있는지에 대한 단서가 있습니까?

[편집]

답변을 몇 나는 또한

private void frmMain_Load(object sender, EventArgs e) 
{ 
    try 
    { 
     frmSplash frmS = new frmSplash(); 
     frmS.MdiParent = this; 
     frmS.StartPosition = FormStartPosition.CenterScreen; 
     frmS.Show(); 
    } 
    catch (Exception eX) 
    { 
     throw new Exception("frmMain: Load()" + Environment.NewLine + eX.Message); 
    } 
} 

을 시도하지만 CentreScreen이 작동하지 않습니다 게시 된 후 하나

+0

작동 그래서 내 생각은 frmSplash가 예외를 던지고있다이보십시오. [폼로드가 예외를 잡을 수없는 이유는 무엇입니까?] (http://stackoverflow.com/q/3209706/719186)를 참조하십시오. – LarsTech

답변

2

MDIParent이 아닌 Parent에만 적용됩니다.

가, 게시 된 코드 (CenterScreen 버전) 작동

frmS.StartPosition = FormStartPosition.CenterScreen; 
2

이 변경 시도 :에

frmS.StartPosition = FormStartPosition.CenterParent; 

을 this :

frmS.StartPosition = FormStartPosition.CenterScreen;