Top.Mail.Ru
Ответы

C# не могу решить задачу

Всем привет. Начал новый проект и столкнулся довольно с банальной задачей с которой уже день бьюсь но решения не приходит в голову.
Проект пишу на c# WinForms использую компонент ListView.
Загружаю с директории в ListView изображения. Потом пытаюсь получить имя файла загруженного изображения в ListView нажатием на конкретное изображение. Но к сожалению не получается. Весь интернет облазил. Может кто знает, сталкивался с такой задачей.


string path = @"C:\Users\FelixGret\Documents\Electronic Arts\The Sims 4\Mods\Data\images";

string[] files = Directory.GetFiles(path);

foreach (string file in files)
{


string TxT = file.Remove(0, file.LastIndexOf('\\') + 1);

MessageBox.Show(TxT);


}

Написал такой код но он показывает все файлы. А мне нужно конкретный выбранный в ListView.

По дате
По рейтингу
Аватар пользователя
Оракул

Для получения имени файла изображения, выбранного в ListView, вам следует использовать обработчик события SelectedIndexChanged для вашего компонента ListView. В этом обработчике вы можете получить имя файла, соответствующее выбранному элементу в списке.

Вот пример того, как это можно сделать:

123456789101112131415
 private void listView1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    if (listView1.SelectedItems.Count > 0) 
    { 
        // Получаем выбранный элемент 
        ListViewItem selectedItem = listView1.SelectedItems[0]; 
 
        // Получаем имя файла изображения 
        string imageName = selectedItem.Text; // Имя файла находится в свойстве Text 
 
        // Теперь вы можете использовать imageName по своему усмотрению 
        MessageBox.Show("Выбран файл: " + imageName); 
    } 
} 
 

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

Аватар пользователя
Знаток

членик