【发布时间】:2009-10-26 00:07:49
【问题描述】:
我正在开发一个应用程序,用户可以在其中输入信息,然后将这些信息添加到列表视图中。这很好用。唯一的问题是,应用程序连接到一个网站,该网站会为每个帐户更新该列表视图中的“积分”字段。我不确定如何更新列表视图中的单个子项。
这是一个示例截图:
如何选择特定行中的特定子项进行更新?
【问题讨论】:
标签: c# winforms listview subitem
我正在开发一个应用程序,用户可以在其中输入信息,然后将这些信息添加到列表视图中。这很好用。唯一的问题是,应用程序连接到一个网站,该网站会为每个帐户更新该列表视图中的“积分”字段。我不确定如何更新列表视图中的单个子项。
这是一个示例截图:
如何选择特定行中的特定子项进行更新?
【问题讨论】:
标签: c# winforms listview subitem
好的,我将使用 Windows 窗体。
WinForms 的 ListViewItem 类有一个Name 属性,您可以使用它来查找列表中的特定项目。因此,当您填充列表时,为每个名称分配一个唯一值:
var item = new ListViewItem("Text");
item.Name = "foo"; // some unique id string
listView1.Items.Add(item);
这样您以后可以使用其Items.Find 方法在 ListView 中找到该项目。
var fooItem = listView1.Items.Find("foo", false);
【讨论】:
为了扩展 Matt 的答案,看起来每一行都有一个唯一的电子邮件地址,因此您可以将其分配为每个 ListViewItem 的 Name 属性。使用Find 方法找到要更新的行后,您可以像这样更新该行的点:
fooItem.SubItems[2] = "450";
【讨论】: