Listview子项位置(C#表单)

Listview子项位置(C#表单),c#,forms,listview,position,C#,Forms,Listview,Position,我想获取ListView项/子项的位置。我的意思是,我想得到这个子项的左和右。这就是我的意思: 我试过这个: int item_x = list.Items[1].SubItems[2].Bounds.X; int item_y = list.Items[1].SubItems[2].Bounds.Y; 但它似乎没有给出我想要的正确位置。好的,我之前写的似乎是正确的。它只需要用一些加减法来修正,然后它显示如下: 谢谢你让我意识到这一点 下面是它的代码: int item_l = list.

我想获取ListView项/子项的位置。我的意思是,我想得到这个子项的左和右。这就是我的意思:

我试过这个:

int item_x = list.Items[1].SubItems[2].Bounds.X;
int item_y = list.Items[1].SubItems[2].Bounds.Y;

但它似乎没有给出我想要的正确位置。

好的,我之前写的似乎是正确的。它只需要用一些加减法来修正,然后它显示如下:

谢谢你让我意识到这一点

下面是它的代码:

int item_l = list.Items[1].SubItems[2].Bounds.Left + 3;
int item_t = list.Items[1].SubItems[2].Bounds.Top + 29;
int item_w = list.Items[1].SubItems[2].Bounds.Width - 1;
int item_h = list.Items[1].SubItems[2].Bounds.Height - 1;

ListView listt = new ListView();
Controls.Add(listt);
listt.BringToFront();
listt.Bounds = new Rectangle(new Point(item_l, item_t), new Size(item_w, item_h));

我认为您需要考虑ListView的坐标。我认为(我不知道或测试过您的代码是否正常工作)您的代码将返回相对于listview的坐标。如果你的listview是在一个容器中,而不是直接在表单上,你也应该考虑到这一点。实际上,我觉得这些数字很好。Listview内的坐标正确,包括页眉高度。。他们是什么?你期望什么?这不可能是正确的。。。这就是位置的位置