Я пытался реализовать перетаскивание в treeview. Я генерирую корневые узлы сначала затем, если я перетаскиваю какой-либо объект по treeview, я хочу подвергнуть его точным корневым узлам. Мне нужно что-то как
private void treeView1_DragOver(object sender, DragEventArgs e)
{
TreeNode tNode = FindNodeAtPoint(e.X, e.Y);
}
так, чтобы от tNode я мог найти, что это - корневой узел и может заполнить его под тем родительским узлом.
может кто-либо выручать меня с findNodeAtPoint () функциональность.
private TreeNode FindNodeAtPoint(int x, int y)
{
Point p = new Point(x, y);
p = PointToClient(p);
................
................
................
}
Попробуйте посмотреть эту ссылку:
http://support.microsoft.com/kb/307968
Думаю, это то, что вам нужно. особенно часть метода GetNodeAt
.
private TreeNode FindNodeAtPoint(int x, int y)
{
Point pt = treeView1.PointToClient(new Point(e.X, e.Y));
return treeView1.GetNodeAt(pt);
}
Надеюсь, это поможет