当子项激活了消息框时,防止关闭MDI父表单

时间:2016-06-17 11:03:08

标签: winforms mdi mdichild mdiparent

子表单检查用户工作状态(用户状态是存储用户当前状态的变量。状态可以是: - 工作,待处理或已完成)

在儿童formclosing事件中,我检查了用户状态 如果不是'工作'那么它应该关闭,否则它应该给出一个消息“你还没有完成你的工作”。 当我尝试关闭子表单时,它正常工作。 在MDI formclosing事件中,我调用了一条消息“你想退出应用程序”。如果用户说是申请已关闭

现在当我关闭MDI Parent表单时,孩子会显示消息框,然后显示MDI消息框。

如果我在MDI Messagebox中单击是,它将关闭整个应用程序。

当我在mdi表单消息框中单击是时,MDI表单不应该关闭。

代码这是mdi子窗体关闭事件

Private Sub frmCalls_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
    If is_all_working_completed() Then
            Me.Close()
        Else
            MessageBox.Show("You cant exit before completing all WORKING  Tickets !")
            e.Cancel = True
        End If
    End Sub`

这是MDI父表单结束事件

Private Sub MasterForm_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing

    If e.CloseReason = CloseReason.MdiFormClosing Then
        e.Cancel = True
    End If

    If MessageBox.Show("Do you want to exit ?", "TMS", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) = DialogResult.Yes Then

        Application.Exit()
    Else
        e.Cancel = True
    End If
End Sub

任何帮助将不胜感激。 提前谢谢

0 个答案:

没有答案