Vb.net 双openDialog VBA

Vb.net 双openDialog VBA,vb.net,Vb.net,当我尝试运行此代码时,它会打开一个打开的对话框,没有结果,然后它会打开另一个对话框,并执行我希望它执行的操作。帮忙 Private Sub mnuOpen_Click(sender As Object, e As EventArgs) Handles mnuOpen.Click Dim DidWork As Integer = openFD.ShowDialog() openFD.InitialDirectory = "C:\" openFD.Title = "Open

当我尝试运行此代码时,它会打开一个打开的对话框,没有结果,然后它会打开另一个对话框,并执行我希望它执行的操作。帮忙

Private Sub mnuOpen_Click(sender As Object, e As EventArgs) Handles mnuOpen.Click
    Dim DidWork As Integer = openFD.ShowDialog()
    openFD.InitialDirectory = "C:\"
    openFD.Title = "Open a text file"
    openFD.Filter = "Text Files|*.txt|Word Docs|*.doc"
    openFD.ShowDialog()
    If DidWork = DialogResult.Cancel Then
        MsgBox("Cancel Button Clicked")
    Else
        strFileName = openFD.FileName
        MsgBox(strFileName)
    End If
End Sub

在您的示例中不需要DidWork变量(如前所述,您调用ShowDialog两次)

我希望在对话框结果中检查Ok而不是Cancel:

openFD.InitialDirectory = "C:\"
openFD.Title = "Open a text file"
openFD.Filter = "Text Files|*.txt|Word Docs|*.doc"
If openFD.ShowDialog() = DialogResult.Ok Then
  strFileName = openFD.FileName
  MsgBox(strFileName)
Else
  MsgBox("Dialog Canceled")
End If

你调用
.ShowDialog()
两次,它就会显示两次。@GSerg:这应该是答案。:)To OP:为什么在问题标题中使用VBA?