Click here to Skip to main content
11,485,294 members (77,019 online)
Rate this: bad
Please Sign up or sign in to vote.
See more: C# .NET Visual-Studio
I have a code like this..

class ABC
   public string Name, Phone; 
   public static IEnumerable<ABC> GetList()
      List<ABC> foo = new List<ABC>();
      //Some COde here
      return foo; 
Class A
   private void GetList()
      IEnumerable<ABC> abc = ABC.GetList();
      foreach (ABC newitem in abc)
         ListViewItem li = new ListViewItem();
         li.Text = newitem.Name;
         li.Tag = newitem; //<<<<<<<<<<<<< Is this Possible ??? 

I want to know If I can assign an object to the Tag Property of ListViewItem ??
How come it be accessible outside since the object resides inside a function ??
Will it cause any problems in future ?? Memory and so.... Frown | :( Please Helpp :(
Posted 3-Jul-13 3:57am

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

Yes, that's what the Tag property is there for.

The object is accessible outside the function because you are assigning a reference to it. Since there is a reference to it, it's not garbage collected and it exists outside the function where it is assigned.

It should not cause any problems in the future unless you use events on the object. Then you would need to remember to release the events before assigning the object to null so that the garbage collector will pick it up and destroy it. Simply using it as a reference like you do above will not cause any issues, I do it quite frequently.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Sergey Alexandrovich Kryukov 380
1 Maciej Los 365
2 Mehdi Gholam 160
3 Raje_ 145
4 Frankie-C 134
0 Sergey Alexandrovich Kryukov 8,819
1 OriginalGriff 7,982
2 Sascha Lefèvre 3,199
3 Maciej Los 2,841
4 Richard Deeming 2,370

Advertise | Privacy | Mobile
Web04 | 2.8.150520.1 | Last Updated 3 Jul 2013
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100