0

我目前正在尝试从每个选中的 listviewitem 中获取一列中的所有子项,并将它们显示在 Richtextbox 中,但我不知道该怎么做。这是我当前的代码。

我也在尝试在 ItemChecked 事件中执行此操作。

        foreach (ListViewItem item in listView1.Items)
        {
            if (listView1.CheckedItems.Count > 0)
            {
                richTextBox2.Text = listView1.CheckedItems[0].SubItems[1].Text;

            }
        }

我认为这会起作用,但显然不行。感谢所有帮助!

4

1 回答 1

1

您正在替换每个循环中文本框的内容。尝试用 . 附加文本+=。您还需要选择正确的项目

richTextBox2.Text = String.Empty;
foreach (ListViewItem item in listView1.Items)
{
    if (item.Checked)
    {
        richTextBox2.Text += item.SubItems[1].Text + Environment.NewLine;
    }
}

您也可以使用 LINQ 表达式来编写它,然后String.Join

richTextBox2.Text = String.Join(Environment.NewLine,
    from item in listView1.Items.OfType<ListViewItem>()
    where item.Checked
    select item.SubItems[1].Text);
于 2012-06-06T05:08:29.267 回答