我在使用Visual Studio 2008中的OpenFileDialog类时遇到了问题。我正在VB.net中编写一个在WEC 7设备上使用.Net Compact Framework 3.5的嵌入式应用程序。
我希望子表单中的按钮允许用户使用OpenFileDialog选择文件。但是,每次用户单击打开此对话框的按钮时,对话框都不会出现,表单似乎会立即关闭。父表单变得没有响应(好像对话框已打开,但无法访问),当我在调试模式下暂停代码时,系统似乎正在等待文件选择的输入(同样,这是不可见的)。
我的第一个想法是,这是一个问题,哪个表单位于顶部,或者使用我的代码(见下文),但我已将代码复制粘贴到其他子表单的其他按钮中并且没有问题。我尝试从if语句中删除showdialog而不改变结果。我甚至把代码放在表单的加载函数中 - 它工作得很好。我很遗憾地解释了什么是错的。
你们有没有发现这个问题?
这是我的按钮代码。点击功能:
Dim FileSelect As New OpenFileDialog
FileSelect.Filter = "Files|*.*"
If FileSelect.ShowDialog() = Windows.Forms.DialogResult.OK Then
Dim test As String = FileSelect.FileName
End If
答案 0 :(得分:0)
也许您在后台线程中运行此代码。它可能会得到一个ThreadStateException