使用打开文件对话框不会返回使用的文件名,我想文件名只有我不在乎,如果它在使用返回一个文件名
该文件将最有可能在使用中,我只是希望能够找到该文件并检索其名称和位置以执行连接。
OpenFileDialog的工作原理,直到我选择文件,然后它有一个弹出窗口,说“使用中的文件”。我不希望它检查,只是返回文件名。
使用打开文件对话框不会返回使用的文件名,我想文件名只有我不在乎,如果它在使用返回一个文件名
该文件将最有可能在使用中,我只是希望能够找到该文件并检索其名称和位置以执行连接。
OpenFileDialog的工作原理,直到我选择文件,然后它有一个弹出窗口,说“使用中的文件”。我不希望它检查,只是返回文件名。
看来,设置ValidateNames
属性为false
解决了问题(但不要问为什么:) ...)
这是我用来尝试把代码:
var f=File.OpenWrite(@"C:\test.txt");
var ofd = new OpenFileDialog();
ofd.ValidateNames = false;
ofd.ShowDialog();
f.Close();
注释掉第三行给我的描述错误“文件正在使用”。
我用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
尝试将ValidateNames设置为false。
OpenFileDialog fd = new OpenFileDialog();
fd.ValidateNames = false;
笑......像牛排上的狗。 :-) – JustBoo 2010-08-25 00:08:26
也为我工作。 Win7 – 2010-08-25 00:25:59