我想让用户用FolderBrowserDialog选择一个文件夹并将文件加载到ListView中。如何将文件夹文件加载到ListView中?
我的意图是做一个小的播放列表,所以我不得不修改我假设的ListView控件的几个属性。我应该在控制上设置哪些属性?
我该如何实现这一目标?
我想让用户用FolderBrowserDialog选择一个文件夹并将文件加载到ListView中。如何将文件夹文件加载到ListView中?
我的意图是做一个小的播放列表,所以我不得不修改我假设的ListView控件的几个属性。我应该在控制上设置哪些属性?
我该如何实现这一目标?
当然,你只需要做到以下几点:
FolderBrowserDialog folderPicker = new FolderBrowserDialog();
if (folderPicker.ShowDialog() == DialogResult.OK)
{
ListView1.Items.Clear();
string[] files = Directory.GetFiles(folderPicker.SelectedPath);
foreach (string file in files)
{
string fileName = Path.GetFileNameWithoutExtension(file);
ListViewItem item = new ListViewItem(fileName);
item.Tag = file;
ListView1.Items.Add(item);
}
}
然后再获取文件出来,做一个按钮,按以下或其他事件:
if (ListView1.SelectedItems.Count > 0)
{
ListViewItem selected = ListView1.SelectedItems[0];
string selectedFilePath = selected.Tag.ToString();
PlayYourFile(selectedFilePath);
}
else
{
// Show a message
}
为了获得最佳观看效果,请将ListView设置为详细模式:
ListView1.View = View.Details;
基本功能看起来是这样的:
public void DisplayFolder (string folderPath)
{
string[ ] files = System.IO.Directory.GetFiles(folderPath);
for (int x = 0 ; x < files.Length ; x++)
{
lvFiles.Items.Add(files[x]);
}
}
列表项
私人无效buttonOK_Click_1(对象发件人,EventArgs的)
{
DirectoryInfo FileNm = new DirectoryInfo(Application.StartupPath);
var filename = FileNm.GetFiles("CONFIG_*.csv");
//文件名CONFIG_123.csv,CONFIG_abc.csv等
foreach(FileInfo f in filename)
listViewFileNames.Items.Add(f.ToString());
}