c# - 如何添加到 Listview 项目的特定列?

标签 c# .net winforms listview user-interface

我创建了一个 ListView ,列数在运行时确定。我一直在网上阅读有关 listview 的文本(我现在仍然是),但我想知道如何将项目添加到 listview 中的特定列我想是这样的:

m_listview.Items.Add("1850").SubItems.Add("yes");

假设 "1850" 是目标列,该列的文本将起作用。

最佳答案

ListViewItems 不知道您的 ListView 列。

为了直接引用列,首先需要将所有列添加到ListViewItem。

所以...假设您的 ListView 具有三列 A、B 和 C; 下一段代码只会将数据添加到 A 列:

ListViewItem item = new ListViewItem();
item.Text = "Column A";

m_listView.Items.Add(item);

要让它也向 C 列添加文本,我们首先需要告诉它它有一个 B 列...

ListViewItem item = new ListViewItem();
item.Text = "Column A";
item.SubItems.Add("");
item.SubItems.Add("Column C");

m_listView.Items.Add(item);

现在我们将在 ListViewItem 中有 A、B 和 C 列,文本出现在 A 和 C 列中,但 B 列中没有。

最后......既然我们已经告诉它它有三列,我们可以对那些特定的列做任何我们喜欢的事......

ListViewItem item = new ListViewItem();
item.Text = "Column A";
item.SubItems.Add("");
item.SubItems.Add("Column C");

m_listView.Items.Add(item);

m_listView.Items[0].SubItems[2].Text  = "change text of column C";
m_listView.Items[0].SubItems[1].Text  = "change text of column B";
m_listView.Items[0].SubItems[0].Text  = "change text of column A";

希望对您有所帮助!

关于c# - 如何添加到 Listview 项目的特定列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1255635/

相关文章:

c# - .NET 反向信号量?

c# - 如何检测我的程序是否在 Windows 中运行?

c# - 窗体;检测表单从另一个表单关闭

c# - DataGridView 只读 "bug"

c# - 为什么 Environment.NewLine = "\r\n"而字符串文字中的 "\n"功能相同?

C# 自动清除 Winform 文本框

c# - 在计算机崩溃时调用 File.WriteAllText 会导致数据丢失

c# - 如何修复试图匹配 1-100 个字符的字母、数字、空格、下划线和破折号的 C# 正则表达式

c# - 数据绑定(bind) Windows 窗体控件在失去焦点之前无法识别更改

winforms - mvp模式中winforms之间的通信