如何在wpf中存储从FolderBrowserDialog()中选择的目录名称?
本文关键字:选择 wpf 存储 FolderBrowserDialog | 更新日期: 2023-09-27 18:09:42
在我的一个程序中有一个"settings"按钮,用于抓取用户想要使用的目录。
在他们选择一个目录之后,我希望能够返回三条信息。
- 选择的目录名。
- 该目录下的文件数(仅指文件,不包括其他目录)
- 包含目录中所有文件名称的列表。
我一直在看这个页面,我找到了GetFiles()方法,但我还没有弄清楚如何获得目录的名称。任何正确方向的提示都是值得赞赏的。
这是我到目前为止写的。
public void SettingsButton(object sender, RoutedEventArgs e)
{
var dialog = new System.Windows.Forms.FolderBrowserDialog();
System.Windows.Forms.DialogResult result = dialog.ShowDialog();
if (result == System.Windows.Forms.DialogResult.OK)
{
string[] files = Directory.GetFiles(dialog.SelectedPath);
MessageBox.Show("files found" + files.Length.ToString(), "Message");
}
}
我知道上面的代码没有返回文件的名称,但是我知道如何做到这一点的粗略想法,我只是还没有实现它....所以我的问题是关于将他们选择的目录存储为字符串
这里有一个例子,如何做到这一点,一个简单的foreach:
public void SettingsButton(object sender, RoutedEventArgs e)
{
var dialog = new System.Windows.Forms.FolderBrowserDialog();
System.Windows.Forms.DialogResult result = dialog.ShowDialog();
if (result == System.Windows.Forms.DialogResult.OK)
{
string[] files = Directory.GetFiles(dialog.SelectedPath);
string resultStr = string.Empty;
foreach (String item in files)
{
resultStr += item.ToString() + "'n";
}
MessageBox.Show("path:" + dialog.SelectedPath + "'n" +
"files: " + files.Count().ToString() + "'n" +
resultStr, "Message");
}
}
using System.Windows.Forms;
FolderBrowserDialog() dialog = new FolderBrowserDialog();
DialogResult result = dialog.ShowDialog();