我需要在C#的ListView中单击该列
我有一些来自How to determine the clicked column index in a Listview的示例代码,但不确定如何实现。
最佳答案
哎呀,每个人都懒得写代码。该过程分为三个步骤:
Control.MousePosition
获取鼠标位置并转换为客户端坐标。 HitTest
函数以查找鼠标指向的内容。这将返回一个对象,除了实际的列号以外,它还包含很多信息,因此... IndexOf
搜索子项数组以查找列号。 这是代码:
private void listViewMasterVolt_DoubleClick(object sender, EventArgs e)
{
Point mousePosition = myListView.PointToClient(Control.MousePosition);
ListViewHitTestInfo hit = myListView.HitTest(mousePosition);
int columnindex = hit.Item.SubItems.IndexOf(hit.SubItem);
}