2009-05-12 5 views
0

xForm.ShowDialog(this);을 사용하여 양식을 표시하고 있습니다.ShowDialog 양식에서 클릭 이벤트 취소

이 양식의 버튼에는 DialogResult이 OK로 설정되어 있습니다. 이제 OK 버튼을 클릭하면 몇 가지 유효성 검사가 수행됩니다. 실패 할 경우 양식을 그대로 남아 있지만 양식 닫히고 DialogResult.OK 주 양식을 반환합니다. 그러면 어떻게 그 일이 일어나지 않도록 할 수 있습니까?

예 :

Button_click 
{ 
    If validation fails pretend we never came here 
    else some code.. return DialogResult.OK 
} 

답변

-1

DialogResult를 단추에 지정하지 마십시오. Form.ShowDialog 메서드를 호출하는 DialogResult를 반환하는 메서드를 사용할 수 있습니다. 유효성 검사 단추가 눌려지면 양식의 유효성을 검사하고 유효성 검사가 성공하면 예상되는 DialogResult를 반환합니다.

0

대화 상자의 FormClosing 이벤트에서 양식을 닫지 않으려면 FormClosingEventArgs Cancel 속성을 true로 설정하십시오.

3
Button_click() 
{ 
    if (this.Validate()) 
    { 
    this.DialogResult = DialogResult.OK ; 
    } 

} 
+0

니스. 하지만 당신이 생각하는 : this.DialogResult = DialogResult.OK; –

+0

@Jay, 당신 말이 맞아요. 그 점을 지적 해 주셔서 감사합니다. –