用 ListView 顯示資料夾內容 

How can I load a folders files into a ListView?

I'd like to have a user select a folder with the FolderBrowserDialog and have the files loaded into the ListView.

My intention is to make a little playlist of sorts so I have to modify a couple of properties of the ListView control I'm assuming. What properties should I set on the control?

How can I achive this? 

Answer 1

Surely you just need to do the following:

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);}}

Then to get the file out again, do the following on a button press or another event:

if (ListView1.SelectedItems.Count > 0){ListViewItem selected = ListView1.SelectedItems[0];string selectedFilePath = selected.Tag.ToString();PlayYourFile(selectedFilePath);}else{// Show a message}

For best viewing, set your ListView to Details Mode:

ListView1.View = View.Details;

Answer 2

A basic function could look like this:

 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]);}}

Answer 3

List item

private void buttonOK_Click_1(object sender, EventArgs e)

{DirectoryInfo FileNm = new DirectoryInfo(Application.StartupPath);var filename = FileNm.GetFiles("CONFIG_*.csv");

//Filename CONFIG_123.csv,CONFIG_abc.csv,etc

foreach(FileInfo f in filename)         listViewFileNames.Items.Add(f.ToString());}

http://stackoverflow.com/questions/1708239/how-can...

陳鍾誠 (2012年02月15日),(網頁標題) 用 ListView 顯示資料夾內容,(網站標題) 免費電子書:C# 程式設計,2012年02月15日,取自 http://cs0.wikidot.com/listviewfiles ,網頁修改第 0 版。

arrow
arrow

    Johnson峰 發表在 痞客邦 留言(0) 人氣()