ListViewSubtemCollection用于其键的是什么?
题
我试图获取一些ListViewSubItems的值,但我不知道它用于其键的值。我有一些简单的代码:
protected override void OnItemDrag(ItemDragEventArgs e)
{
base.OnItemDrag(e);
ListViewItem item = e.Item as ListViewItem;
string val = item.SubItems[???].ToString();
}
???部分是我遇到问题的地方。我无法弄清楚键是什么。我已经尝试过ListView的列名而没有运气。我想使用此方法而不是使用数字索引。
解决方案
ListViewSubItem
的键是 Name
属性,如描述这里。
将Name设置为等于列名,将允许您通过列的名称索引SubItems。
以某些代码为例
<代码>
ListViewItem myListViewItem = new ListViewItem();
ListViewItem.ListViewSubItem myListViewSubItem = new ListViewItem.ListViewSubItem();
myListViewSubItem.Text =&quot;这将显示&quot ;;
myListViewSubItem.Name =&quot; my key&quot ;;
myListViewItem.SubItems.Add(myListViewSubItem);结果
ListViewItem.ListViewSubItem subItem = myListViewItem.SubItems [&quot; my key&quot;];
代码>
其他提示
您只能使用列索引来添加子项,但您可以通过创建包含每个列的索引的枚举来使其更容易阅读。
子项目仅按列索引排序。所以你必须像以下一样访问它们:
protected override void OnItemDrag(ItemDragEventArgs e)
{
base.OnItemDrag(e);
ListViewItem item = e.Item as ListViewItem;
string val = item.SubItems[0].ToString();
}
不隶属于 StackOverflow