0
다음은 Windows 양식에서 잘 작동합니다.메시지 상자가 닫히고 대리인으로 사용할 때 이벤트 트래핑
그것은 단순히 아이 폼이 닫힐 때 부모 폼에 GroupBorder을 활성화하기 위해 대리자를 사용합니다.
private void uxUpdateDataButton_Click(object sender, EventArgs e)
{
uxRevisionHelperGroupBox.Enabled = false;
uxBindingNavigator.Hide();
uxFormDatabase myNewDisplay = new uxFormDatabase();
myNewDisplay.FormClosed += delegate { activateGroupBorder(); };
myNewDisplay.Show();
}
public void activateGroupBorder()
{
uxRevisionHelperGroupBox.Enabled = true;
uxBindingNavigator.Show();
}
위와 같지만 하위 폼 대신 메시지 상자를 사용할 수 있습니까?
private void uxAuthorPictureBox_Click(object sender, EventArgs e)
{
uxRevisionHelperGroupBox.Enabled = false;
uxBindingNavigator.Hide();
MessageBox myMessage = new MessageBox;
myMessage.close += delegate { activateGroupBorder(); };
myMessage.Show("hello world");
}
public void activateGroupBorder()
{
uxRevisionHelperGroupBox.Enabled = true;
uxBindingNavigator.Show();
}
MessageBox.Show (...)는 동기 호출입니다. 즉, 상자가 닫힐 때까지 실행이 계속되지 않습니다. 왜 메시지 상자가 끝난 후에 activateGroupBorder()를 호출 할 수 없습니까? 'myMessage.Show ("hello world"); this.activateGroupBorder(); ' – loopedcode
+1 쿨 - 고마워. 왜 그걸 해결책으로 생각하지 않니? – whytheq
답변으로 추가되었습니다. – loopedcode