C# - Update a subitem within a listview

13.1k views Asked by At

I am working on an application where users enter information that is then added to a listview. That works great. The only problem is, the application connects to a web site that updates the "Points" field in that listview for each account. I am not sure how I can update a single subitem within a listview.

Here is an example screenshot:

alt text

How can I select a specific subitem in a specific row to update?

2

There are 2 answers

0
Matt Hamilton On BEST ANSWER

Ok, I'm going to assume Windows Forms.

WinForms' ListViewItem class has a Name property, which you can use to look up a specific item in a list. So as you populate the list, assign a unique value to the Name of each:

var item = new ListViewItem("Text");
item.Name = "foo"; // some unique id string
listView1.Items.Add(item);

That way you can locate the item in the ListView later, using its Items.Find method.

var fooItem = listView1.Items.Find("foo", false);
0
MusiGenesis On

To expand on Matt's answer, it looks like each row has a unique email address, so you could assign that as the Name property for each ListViewItem. Once you've located the row to update using the Find method, you can update that row's Points like this:

fooItem.SubItems[2] = "450";