2009-10-26 4 views
5

Je travaille sur une application dans laquelle les utilisateurs entrent des informations qui sont ensuite ajoutées à une vue de liste. Cela fonctionne très bien. Le seul problème est, l'application se connecte à un site Web qui met à jour le champ "Points" dans cette liste pour chaque compte. Je ne suis pas sûr de savoir comment je peux mettre à jour un seul sous-élément dans une liste.C# - Mettre à jour un sous-élément dans une vue de liste

Voici une capture d'écran par exemple:

alt text http://i37.tinypic.com/15y6arn.jpg

Comment puis-je sélectionner un sous-élément spécifique dans une ligne spécifique de mettre à jour?

+2

WPF? WinForms? ASP.NET? –

+0

WinForms, désolé. – user

Répondre

5

Ok, je vais supposer Windows Forms.

La propriété ListViewItem de WinForms possède une propriété Name, que vous pouvez utiliser pour rechercher un élément spécifique dans une liste. Donc, comme vous Renseigner la liste, attribuer une valeur unique au nom de chaque:

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

De cette façon, vous pouvez localiser l'élément dans le ListView plus tard, en utilisant sa méthode Items.Find.

var fooItem = listView1.Items.Find("foo", false); 
3

Pour développer la réponse de Matt, il semble que chaque ligne a une adresse e-mail unique, vous pouvez attribuer que la propriété Name pour chaque ListViewItem. Une fois que vous avez localisé la ligne à mettre à jour en utilisant la méthode Find, vous pouvez mettre à jour les points de cette ligne comme ceci:

fooItem.SubItems[2] = "450"; 
Questions connexes