【发布时间】:2018-01-15 10:41:55
【问题描述】:
我有一个带有文件夹的列表视图。我正在尝试从列表视图中获取选定文件夹的文件以将它们添加到列表框。
private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
string filepath = Path.GetDirectoryName(listView1.SelectedItems);
listBox1.Items.Add(filepath);
}
这就是我所拥有的,我知道这应该只将文件夹添加到列表框,但它只是将(集合)添加到列表框。
任何帮助将不胜感激。
编辑:按照@aria 的代码,我将Path.GetDirectoryName(listview1.SelectedItems[i].Text) 切换为Directory.GetFiles[i].Text),但现在它给了我一个错误。
System.IO.DirectoryNotFoundException: 'Could not find a part of the path 并且路径是项目的调试文件夹,而不是实际的文件夹路径。
为什么要转到调试文件夹?
【问题讨论】:
-
ListView.SelectedItems返回一个集合类,所以我很确定当您尝试将集合传递给Path.GetDirectoryName()时,您的代码将会失败,这将期待string跨度> -
“它似乎不起作用。”是一个非常狭隘的问题描述。如果您尝试准确描述您获得的输出和/或您收到的错误消息,您真的可以帮助愿意帮助您的人
-
我在这里有点困惑。 “从列表视图中选择的文件夹”所以您的列表视图包含文件夹?=!并且您想选择一个文件夹,然后获取其中的所有文件并将名称写入
ListBox1?对吗? -
@MongZhu 是的,这正是我想要做的。抱歉我的描述,我对描述我的代码还是新手。
-
只是名字......我是个白痴,因为没有看到。编辑:@MongZhu 我更改了列表视图的代码,现在列表框正在填充。谢谢你为我指出。