我正在尝试使用OpenFileDialog打开多个文件 并在winforms媒体播放器COM组件中播放它们。 一切似乎都有效,但在列表框中我看到了第一个文件名 次数选择的文件数。
_playList.Items.Clear();
string[] filenames = { };
_openFile.Multiselect = true;
_openFile.ShowDialog();
//filenames = _openFile.FileNames;
foreach (var name in _openFile.FileNames)
{
string filename = System.IO.Path.GetFileName(_openFile.FileName);
_playList.Items.Add(filename);
}
请告知。
答案 0 :(得分:1)
您需要使用name
循环中的foreach
:
string filename = System.IO.Path.GetFileName(name);
答案 1 :(得分:0)
你的问题是由HABO首先指出的错误引起的,但是我想也给出这个答案,因为ListBox.Items有一个名为AddRange的方法,可以使用Linq的单行代码< / p>
_playList.Items.AddRange(_openFile.FileNames
.Select (fn => Path.GetFileName(fn))
.ToArray());