3

我正在尝试将项目添加到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")有效,但我不知道如何为每个项目实现一个密钥。

4

2 回答 2

8

您可以通过将与 ListViewItem 关联的附加值存储在Tag属性中来存储它。

ListViewItem new_item = new ListViewItem(s);
new_item.Tag = my_key_value;

ETA:请记住该Tag属性是 type object,因此在某些情况下,您可能需要在检索值时将值显式转换为正确的类型。

于 2013-03-05T11:09:22.350 回答
2

您可以通过设置 ListViewItem 的标记属性来添加“隐藏”值

ListViewItem new_item = new ListViewItem(s)
{
   Tag = 1
};
于 2013-03-05T11:06:15.387 回答