很直接。按一个按钮,从对话框中选择一个路径,搜索路径的子目录,并在消息框中显示它们。但是遇到了几个问题。
private void InputButton_Click(object sender, RoutedEventArgs e)
{
//CHECKS TO SEE IF "OK" WAS CLICKED IN DIALOGBOX
if (fbd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
}
//SELECTS DIRECTORY PATH
Path.GetDirectoryName(fbd.SelectedPath);
string path = Path.GetDirectoryName(fbd.SelectedPath);
InputDirectory_Box.Text = path;
//SELECTS SUBDIRECTORIES FROM PATH
string[] subdirectories = DirectoryInfo.GetDirectories(path);
for (int i = 0; subdirectories.Length+1 >= 0; i++)
{
MessageBox.Show(subdirectories[i]);
}
}
该行string[] subdirectories = DirectoryInfo.GetDirectories(path);
表示它需要非静态字段的对象引用。我已经声明path
给它要搜索的字符串。我对 Directory 类(不是类)使用了完全相同的代码和语法行,DirectoryInfo
这是合法的。但是,我在使用时遇到了问题Directory.GetDirectories
。由于某种原因,它正在寻找路径的父目录而不是。subdirectories
如果有人可以阐明:
A - 为什么我会收到此语法错误
B - 为什么它返回父目录而不是路径中的子目录
那你就是英雄了。非常感谢
PS我对编程完全陌生,还不知道枚举/枚举是什么,所以如果它与此有关,我可能会很感激一个小例子或它的一些背景。