【问题标题】:WPF OpenDirectoryDialog in order to get and set the path of a ListView itemSourceWPF OpenDirectoryDialog 以获取和设置 ListView itemSource 的路径
【发布时间】:2013-05-28 03:47:48
【问题描述】:

我有一个ListView,其中包含给定目录中所有 .jpg 格式的图像。它由代码隐藏使用以下代码填充:

DirectoryInfo folder = new DirectoryInfo(Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName) + App.putanjaSlika);
FileInfo[] images = folder.GetFiles("*.jpg");
for (int i = 0; i<images.Length; ++i)
{
    FileInfo img = images[i];
    Thumbnails.Items.Add(new BitmapImage(new Uri(img.FullName)));
}

这非常有效,但正如您所见,路径几乎是一成不变的。我需要的是某种BrowseDirectoryDialog,它可以让我“打开”给定目录,并使用找到的路径作为上述代码第一行的参数。

我发现了这个问题Open directory dialog,我喜欢 Ookii.Dialogs 解决方案,但也许更喜欢第二个答案下的解决方案。但是,鉴于该线程已有 3.5 年的历史,我想问是否有更好的解决方案出现,因为我找不到任何解决方案。

【问题讨论】:

    标签: c# wpf directory


    【解决方案1】:

    我在 2011 年为 WPF 发布了这个文件夹浏览器对话框:

    http://wpffolderbrowser.codeplex.com/

    它基于一个 MSDN 示例并提供了完整的源代码,因此您可以根据需要对其进行调整。我比链接帖子中提到的解决方案更喜欢它,因为它显示了具有 Vista / Windows 7 外观的“新样式”打开文件夹对话框,而不是似乎与 Windows 95 中相同的 WinForms 对话框。

    【讨论】:

    • 这正是我想要的。真不错。谢谢你:)
    【解决方案2】:

    不幸的是,没有 WPF 的对话框。所以你必须使用 Winforms。

    【讨论】:

    • 这也一直困扰着我。当时的想法是 WPF 不应该有传统的弹出对话框(这是一种 winforms 方法)。话虽如此,他们应该有某种类型的嵌入式控件来做同样的事情,这样你就可以将它放在弹出屏幕或某种类型的滑块上。
    猜你喜欢
    • 2013-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-28
    • 2018-09-02
    • 1970-01-01
    相关资源
    最近更新 更多