2012-02-03 3 views
0

첫 번째 양식에 버튼이 있습니다. 클릭하면 두 번째 양식이 열리고 첫 번째 양식이 닫힙니다. 그러나, 내가하는 일은 '둘 다'형식으로 이루어지지 않습니다. 새 양식 열기 및 전화 걸기 양식 닫기

첫 번째 형태의 버튼이다

private void btnReports_Click(object sender, EventArgs e) 
    { 
     Form f2 = new frmForm2(); 
     f2.Show();    
    } 

그리고이 I는

private void btnReports_Click(object sender, EventArgs e) 
    { 
     Form f2 = new frmForm2(); 
     f2.Show(); 
     this.Close(); 
    } 
+0

대신 ShowDialog (YourMainForm)를 사용하려고 했습니까? – SolidSnake

+0

u는 http://stackoverflow.com/questions/4698080/spawn-a-new-thread-to-open-a-new-window-and-close-it-from-a-different-thread를 참조 할 수 있습니다. – Smack

답변

3

시도

private void frmReports_Load(object sender, EventArgs e) 
    { 
     Application.OpenForms["frmForm1"].Close(); 
    } 

번째 형태의로드 이벤트 코드 인 시작시 다음과 같이 설정했을 수 있습니다.

Application.Run(new frmForm1()); 

frmForm1이 닫히면 응용 프로그램이 중지됩니다. 양식을 숨기십시오. frmForm1.hide();

0

다음 Application.Run(ApplicationContext) 메서드를 살펴보십시오. 마지막 양식이 닫힐 때만 종료되도록 응용 프로그램을 설정하는 방법에 대한 예제가 있으며 기본 양식이 닫힐 때가 아닙니다.