返回文件名

时间:2010-08-24 23:47:29

标签: c# .net-3.5

使用openFileDialog不会返回正在使用的文件名,我只想要文件名我不在乎它是否正在使用

该文件很可能正在使用中,我只是希望能够找到该文件并检索其名称和位置以执行连接。

OpenFileDialog一直有效,直到我选择文件,然后它有一个弹出窗口显示“正在使用文件”。我不想让它检查,只需返回文件名。

3 个答案:

答案 0 :(得分:4)

似乎将ValidateNames属性设置为false可以解决问题(但不要问为什么:) ......)

以下是我过去尝试过的代码:

var f=File.OpenWrite(@"C:\test.txt");
var ofd = new OpenFileDialog();
ofd.ValidateNames = false;
ofd.ShowDialog();
f.Close();

注释掉第三行给了我所描述的错误“正在使用的文件”。

答案 1 :(得分:2)

尝试将ValidateNames设置为false。

OpenFileDialog fd = new OpenFileDialog();
fd.ValidateNames = false;

答案 2 :(得分:1)

我用Google搜索并发现一个帖子表明这是控件中的错误:

http://social.msdn.microsoft.com/forums/en-US/netfxbcl/thread/56fbbf9b-31d5-4e89-be85-83d9cb1d538c/

建议的解决方法是直接调用API,如下所示:

http://www.codeproject.com/KB/dialog/customize_dialog.aspx?print=true