C# 控件的Tag属性

之前一直觉得控件的Tag属性跟TextBox的Text属性类似,只是用来保存用户对控件标记的文本信息或者布尔值,所以在看到下边的代码之后,就感觉有点看不懂了。

ListViewItem item = listViewChannels.Items.Add(DeviceName);
item.Tag = ipcChannel;

上边这段代码的作用是创建一个ListViewItem的对象,并将其Tag的值设置为自定义的一个类IPCChannel的对象.

channelList.Add(item.Tag as IPCChannel);

这句代码的作用就是将上边创建的ListViewItem 类的item 的Tag属性中保存的自定义类IPCChannel的对象提取出来,并添加到列表中。


后边查了一下才知道,原来Tag属性的定义如下:

public Object Tag { get; set; }

定义参考MSDN;
而在.NET中的类都派生于Object类,因此,可以为Tag属性设置任意自定义的类型的对象或基本类型的值,方便程序在必要的时候读取。




你可能感兴趣的:(项目笔记)