假设我正在使用上下文菜单将子节点添加到树视图控件。C#WinForms - TreeView,上下文菜单
(1)我的节点上单击鼠标右键
(2)上下文菜单弹出
(3)然后我点击 “添加” 菜单项
(4)一个对话框打开
(5)在对话框输入我的名字,然后按OK
(6)一个新的节点创建。
当我单击上下文菜单项时,如何获取当前节点的引用?
我需要这个父母对象存储在当前节点的Tag属性中。
假设我正在使用上下文菜单将子节点添加到树视图控件。C#WinForms - TreeView,上下文菜单
(1)我的节点上单击鼠标右键
(2)上下文菜单弹出
(3)然后我点击 “添加” 菜单项
(4)一个对话框打开
(5)在对话框输入我的名字,然后按OK
(6)一个新的节点创建。
当我单击上下文菜单项时,如何获取当前节点的引用?
我需要这个父母对象存储在当前节点的Tag属性中。
如果您处理TreeNodeMouseClick
,那么您的TreeNodeMouseClickEventHandler
将通过TreeNodeMouseClickEventArgs
参数。
TreeNodeMouseClickEventArgs.Node将是您想要的TreeNode引用。看到TreeNodeMouseClick
文档为类似于一个例子:
void treeView1_NodeMouseClick(object sender,
TreeNodeMouseClickEventArgs e)
{
TreeNode theTreeNodeIWant = e.Node
}
如果需要,可以存储在一个成员变量的引用,以便另一种方法可以访问它。
您可以从
System.Windows.Forms.Cursor.Position
保存此得到展示的上下文菜单之前鼠标的位置。
然后使用含有您的项目
GetChildAtPoint(Point)
树视图的方法,并添加下面的一个孩子。