Как я могу загрузить файлы папок в ListView? - PullRequest
3 голосов
/ 10 ноября 2009

Я бы хотел, чтобы пользователь выбрал папку с помощью FolderBrowserDialog и загрузил файлы в ListView.

Мое намерение состоит в том, чтобы создать небольшой список воспроизведения, поэтому мне нужно изменить пару свойств элемента управления ListView, который я предполагаю. Какие свойства я должен установить на элемент управления?

Как мне этого добиться?

Ответы [ 3 ]

11 голосов
/ 10 ноября 2009

Конечно, вам просто нужно сделать следующее:

    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;
2 голосов
/ 10 ноября 2009

Базовая функция может выглядеть так:

    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]);
        }
    }
0 голосов
/ 05 февраля 2013

Элемент списка

приватная пустая кнопкаOK_Click_1 (отправитель объекта, EventArgs e)

    {

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

    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...