1

我正在使用 TaskDialog,它非常好,我喜欢它而不是普通的消息框。但是我注意到TaskDialog的Show()允许用户返回表单并做某事......我的意思是它不会阻止Form,直到用户关闭TaskDialog点击OK或其他。我检查并找不到而不是 Show - ShowDialog 会阻塞直到 TaskDialog 关闭。有没有办法做到这一点?

例如代码:

 Dim dialog As New TaskDialog()
        AddHandler dialog.Opened, AddressOf taskDialog_Opened
        With dialog
            dialog.Text = "Hello Task Dialog"
            dialog.Caption = "Hello Task Dialog"
            dialog.Show()       
        End With
4

1 回答 1

1

您正在寻找的有关阻塞的术语是modal。如果您使用该OwnerWindowHandle属性,您可以将其设为模态表单:

Using td As New TaskDialog
    td.Caption = "Some Error "
    td.StandardButtons = TaskDialogStandardButtons.Ok
    td.Text = "Something truly horrible has happened!"
    td.OwnerWindowHandle = Me.Handle    ' current form handle
    td.Show()
End Using

如果您的应用显示了多个表单,则只会阻止该所有者访问。还要注意使用Using块来处理它并在完成时释放资源。

于 2015-10-21T18:01:42.413 回答