这里是我的问题:WPF:在列表框无法获取选定文件的列表
我有一个列表框,而我添加项目我点击一个按钮后:
var files = System.IO.Directory.GetFiles("c:\", "*.csv");
foreach (var file in files)
{
string fileName = System.IO.Path.GetFileNameWithoutExtension(file);
Settings.AllFilesList.Add(new CsvFile(fileName));
FilesListListBox.Items.Add(fileName);
}
它的工作原理这应该。
现在,我的ListBox(FilesListListBox)将SelectionMode设置为“Multiple”。 我现在需要的是将所选文件保存在名为SelectedFilesList的列表中的功能。如上所见,所有文件都存储在名为AllFilesList的列表中。
我该怎么做?
我想:
private void Button_Click_2(object sender, RoutedEventArgs e)
{
foreach (var file in FilesListListBox.SelectedItems)
{
Settings.SelectedFilesList.Add(file);
}
}
,但没有奏效。我认为在上面的foreach循环中,每个文件对象都只是一个包含文件名称的字符串,所以这就是为什么它不起作用。我的SelectedFilesList需要CsvFile类型的对象。
public class CsvFile
{
public string Name { get; set; }
public CsvFile(string name)
{
Name = name;
}
}
您是否可以在您投票反馈时添加评论。 –
我当然没有downvote。感谢您的帮助,我仍然在学习WPF和XAML – Loreno
您的解决方案肯定是准确的,但我不知道如何将这些选定的项目放在我的SelectedFilesList中。我做了你所有建议,然后我使用 foreach(var files在FilesListListBox.SelectedItems) { Settings.SelectedFilesList.Add(file); } – Loreno