2010-04-19 4 views
1

나는 mainForm과 saveForm을 가지고 있습니다. mainForm을 닫지 않고 saveForm이 맨 위에 표시되도록하십시오.양식을 닫고 다른 양식으로 돌아가서 무언가를 수행

saveForm을 닫을 때 mainForm으로 돌아가려면 코드 조각을 실행하고 싶습니다.

이것을 달성하는 가장 좋은 방법은 무엇입니까? 당신이 saveForm을 만족하는 경우 mainForm에서

답변

3

를 코드를 넣어, 모달 표시,

따라서 mainForm에는 저장 버튼 (btnSave이라고 부름)이 있다고 가정합니다. 바로 saveForm이 표시됩니다. 맞습니까? 권리. 저장 단추를 두 번 클릭하면 Visual Studio에서 이벤트 처리기를 만듭니다. 아래 코드를 입력하십시오.

private void btnSave_Click(object sender, EventArgs e) 
{ 
    saveForm sf = new SaveForm(); 
    if (sf.ShowDialog() == DialogResult.OK) 
    { 
     // do your thing 
    } 
} 

물론 saveForm이 DialogResult를 설정하는지 확인해야합니다. 예를 들어, 당신이 할 것 OK 버튼의 클릭 이벤트에서 ... 당신이 saveForm 닫 예상되는 saveForm에서 OK 버튼이 가정 :

private void btnOK_Click(object sender, EventArgs e) 
{ 
    this.DialogResult = DialogResult.OK; 
    this.Close(); 
} 
+0

내가이 어디에 넣을까요? – sark9012

+0

mainForm 또는 saveForm에서? – sark9012

+0

@ 루크. 당신은 mainForm에서 이것을 할 것입니다. – AngryHacker

2

이의 saveForm에 FormClosed 이벤트에 가입 benPearce의 대답 @뿐만 아니라이 이벤트에 대한 이벤트 처리기에서

void saveForm_FormClosed(object sender, FormClosedEventArgs e) 
{ 
    /// code here 
} 
관련 문제