Добавление списка файлов из каталога в ListView
Вылезают ошибки
Не удается неявно преобразовать тип "System.Collections.Generic.List<string>" в "System.Windows.Controls.ListView"Не удается применить индексирование через [] к выражению типа "ListView". pr_5
Понятно, что из-за первой лезет и вторая. Подскажите как можно это дело исправить или как проще создать это приложение, руки опускаются уже
private void btn_path_Click(object sender, RoutedEventArgs e)
{
var dialog = new FolderBrowserDialog();
var dialogResult = dialog.ShowDialog();
if (dialogResult.HasFlag(System.Windows.Forms.DialogResult.OK))
{
tbx_path.Text = dialog.SelectedPath;
}
lw_SpisokPhoto = Directory.EnumerateFiles(tbx_path.Text)
.Where(x => x.EndsWith(".jpg") || x.EndsWith(".png"))
.ToList();
if (lw_SpisokPhoto.AlternationCount == 0)
{
return;
}
im_gallery.Source = new BitmapImage(new Uri(lw_SpisokPhoto[0]));
}
Ответы (1 шт):
Автор решения: aepot
→ Ссылка
lw_SpisokPhoto это контрол, а не коллекция, его коллекция это свойство ItemsSource.
private void btn_path_Click(object sender, RoutedEventArgs e)
{
var dialog = new FolderBrowserDialog();
var dialogResult = dialog.ShowDialog();
if (dialogResult.HasFlag(System.Windows.Forms.DialogResult.OK))
{
tbx_path.Text = dialog.SelectedPath;
}
string[] files = Directory.EnumerateFiles(tbx_path.Text)
.Where(x => x.EndsWith(".jpg") || x.EndsWith(".png"))
.ToArray();
lw_SpisokPhoto.ItemsSource = files;
if (files.Length == 0)
{
return;
}
im_gallery.Source = new BitmapImage(new Uri(files[0]));
}
Пример работы с файлами в листбоксе есть еще здесь.