gpt4 book ai didi

winforms 中的 C# listview 不显示添加的项目

转载 作者:行者123 更新时间:2023-11-30 18:32:19 27 4
gpt4 key购买 nike

我试图从 C# 中的打开文件对话框中选择一个目录,但是当我实际将项目添加到 ListView 时,它没有显示。到目前为止,这是我的代码……我是否遗漏了什么?

private void btnChoose_Click(object sender, EventArgs e)
{
try
{
FolderBrowserDialog folderPicker = new FolderBrowserDialog();
listLeft.View = View.Details;
if (folderPicker.ShowDialog() == DialogResult.OK)
{
DirectoryInfo di = new DirectoryInfo(folderPicker.SelectedPath);
FileInfo[] files = di.GetFiles();
DirectoryInfo[] directories = di.GetDirectories();

foreach (DirectoryInfo directory in directories)
{
listLeft.Items.Add("Directory " + directory.Name);
}
foreach (FileInfo file in files)
{
listLeft.Items.Add(file.Name);
}
}
}
catch (Exception ex)
{
MessageBox.Show("An error occurred: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

编辑:::添加了带有说明的屏幕截图... enter image description here

最佳答案

我假设 listLeft 是您的 ListView。您需要像这样添加子项:

            foreach (DirectoryInfo directory in directories)
{
ListViewItem lvi = new ListViewItem();
lvi.SubItems.Add("Directory " + directory.Name);
listLeft.Items.Add(lvi);
}
foreach (FileInfo file in files)
{
ListViewItem lvi = new ListViewItem();
lvi.SubItems.Add(file.Name);
listLeft.Items.Add(lvi);
}

编辑:试试这个:

private void button1_Click(object sender, EventArgs e)
{
try
{
listLeft.Columns.Add(new ColumnHeader());
FolderBrowserDialog folderPicker = new FolderBrowserDialog();
listLeft.View = View.Details;
if (folderPicker.ShowDialog() == DialogResult.OK)
{
DirectoryInfo di = new DirectoryInfo(folderPicker.SelectedPath);
FileInfo[] files = di.GetFiles();
DirectoryInfo[] directories = di.GetDirectories();

foreach (DirectoryInfo directory in directories)
{
listLeft.Items.Add("Directory " + directory.Name);
}
foreach (FileInfo file in files)
{
listLeft.Items.Add(file.Name);
}
}
}
catch (Exception ex)
{
MessageBox.Show("An error occurred: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

关于winforms 中的 C# listview 不显示添加的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18810607/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com