【发布时间】:2017-04-04 12:06:25
【问题描述】:
我正在使用带有 Visual Studio 2013 的 Windows 7。
我的应用程序是一个带有 GeckoFx 的网络浏览器组件。在下载事件中,我触发如下打开 SaveFileDialog。但在某些情况下,对话框会在调用 ShowDialog() 后直接消失,并返回一个 DialogResult.Cancel,它会跳转到 else 语句,尽管没有人按下取消。 不会抛出任何错误。
有什么建议为什么会在这里发生?我对此一无所知... :-(
'Save file dialog
Dim saveFileDialog1 As New SaveFileDialog()
saveFileDialog1.Filter = "CSV file (*.csv)|*.csv|All files (*.*)|*.*"
saveFileDialog1.FilterIndex = 2
saveFileDialog1.RestoreDirectory = True
saveFileDialog1.FileName = e.Filename
saveFileDialog1.AutoUpgradeEnabled = False
saveFileDialog1.CheckPathExists = False
saveFileDialog1.InitialDirectory = globalParameters.getDownloadDirectory() 'globalParameters._downloadDirectory
dialogResultValue = saveFileDialog1.ShowDialog()
If dialogResultValue = DialogResult.OK Then
'should go on here first, if user presses okay
Else
' I am coming to this point, althoug nobody pressed any cancel button or any other input had happened yet
End If
【问题讨论】:
-
@downvoter:你应该评论为什么你对我的问题投了反对票。也许我应该添加一些缺失的信息或其他......现在,我认为这是一个有效的问题
-
你在调试模式下试过什么?
-
键盘缓冲区中是否有错误的击键?对话是如何触发的?是通过键盘输入还是鼠标输入?表单的
CancelButton或AcceptButton属性设置为什么? -
@ChrisDunaway 它由 geckofx 框架的下载事件触发(例如“Public Sub LauncherDialog_Download(ByVal sender As Object, ByVal e As Gecko.LauncherDialogEvent)”);除了上面示例代码-sn-p 中提到的以外,我没有将该属性设置为其他特定设置。我猜那是标准的?
-
@DannyJames 它发生在调试模式和应用程序正常运行时;我尝试调试,但我能看到的唯一效果是,如果调用 ShowDialog(),应用程序会直接返回 Cancel。没有错误或其他任何显示
标签: vb.net visual-studio-2013 savefiledialog geckofx