我正在尝试将项目添加到
ListView
控件。 我希望添加带有文本值(显示的)和选择时具有的隐藏键值的项目。
我尝试过以下代码:
string flows_path = "C:\\temp\\Failed Electricity flows\\";
List<ListViewItem> flows_loaded = new List<ListViewItem>();
foreach (string s in Directory.GetFiles(flows_path, "*.rcv").Select(Path.GetFileName))
{
ListViewItem new_item = new ListViewItem(s, 1);
ListViewItem.ad
// Add the flow names to the list
flows_loaded.Add(new_item);
}
但它告诉我
ListViewItem
没有 (string, int)
的重载,并且它似乎没有我可以设置的“值”、“文本”或“键”值。
ListViewItem("My Item")
有效,但我不知道如何为每个项目实现一个密钥。
您可以通过将其存储在
Tag
属性中来存储与 ListViewItem 关联的附加值。
ListViewItem new_item = new ListViewItem(s);
new_item.Tag = my_key_value;
预计到达时间:请记住,
Tag
属性的类型为object
,因此在某些情况下,您可能需要在检索值时将值显式转换为正确的类型。
您可以通过设置 ListViewItem 的 Tag-Property 来添加“隐藏”值
ListViewItem new_item = new ListViewItem(s)
{
Tag = 1
};
ListView具有您想要的项目key功能。 您可以通过这种方式向项目添加密钥:
listView1.Items.Add("yourKey", "itemText", imageIndex);
但是如果您想通过 ListViewItem 对象添加到 ListView,则对象构造函数没有 item 的 key 参数。然后您可以使用 Name 属性(实际上是 item key 属性)。
ListViewItem new_item = new ListViewItem("itemText", imageIndex){ Name = "yourKey"};
// Add the flow names to the list
flows_loaded.Add(new_item);