如何在WinForms OpenFileDialog中输入URL?

时间:2015-09-21 02:18:16

标签: c# winforms

如果用户在Windows窗体OpenFileDialog中输入URL,则Windows的对话框(在更现代的版本上)将下载该文件并从临时目录中打开它。有没有办法获得输入的URL?新奇的IFileDialog能帮忙吗?

请注意,我不是在寻找文件://等效于本地文件。这适用于用户将Internet上的某些内容输入到文件对话框中的情况。例如http://example.com/path

This基本上问了同样的问题,但没有得到有用的答案,可能是因为他要求结果出现在FileName属性中。

2 个答案:

答案 0 :(得分:1)

可以设置Windows挂钩来监听文本更改。此代码目前从所有字段中获取值更改,因此您需要弄清楚如何仅检测File文件名字段。

File directory = new File("/Users/Documents/myfolder");
if (!directory.exists()) {
   directory.mkdirs();
}

答案 1 :(得分:0)

如果您只想获取URL(不是下载文件),请将CheckFileExists标志设置为false。 下面的示例代码

        string urlName = null;
        using (var dlg = new OpenFileDialog())
        {
            dlg.CheckFileExists = false;

            dlg.ShowDialog();
            urlName = dlg.FileName;
            urlName = Path.GetFileName(urlName);

        }