문제

컨텍스트 메뉴를 사용하여 TreeView 컨트롤에 자식 노드를 추가한다고 가정 해 봅시다.

(1) 노드를 마우스 오른쪽 버튼으로 클릭하고 있습니다

(2) 컨텍스트 메뉴가 나타납니다

(3) 그런 다음 "추가"메뉴 항목을 클릭합니다.

(4) 대화 상자가 열립니다

(5) 해당 대화 상자에 이름을 입력하고 확인을 누릅니다.

(6) 새 노드가 생성됩니다.

컨텍스트 메뉴 항목을 클릭 할 때 현재 노드를 참조하는 방법은 무엇입니까?

이 coz가 필요합니다. 부모 객체는 현재 노드의 태그 속성에 저장됩니다.

도움이 되었습니까?

해결책

당신이 처리하는 경우 TreeNodeMouseClick, 당신의 TreeNodeMouseClickEventHandler 통과됩니다 TreeNodeMouseClickEventArgs 논쟁.

Treenodemouseclickeventargs.node는 원하는 Treenode 참조입니다. 참조 TreeNodeMouseClick 다음과 유사한 예제에 대한 문서

void treeView1_NodeMouseClick(object sender,  
    TreeNodeMouseClickEventArgs e)
{
    TreeNode theTreeNodeIWant = e.Node

}

필요한 경우 다른 메소드가 액세스 할 수 있도록 회원 변수에 참조를 저장할 수 있습니다.

다른 팁

마우스 위치를 얻을 수 있습니다

System.Windows.Forms.Cursor.Position

상황에 맞는 메뉴를 표시하기 전에 이것을 저장하십시오.

그런 다음 항목이 포함 된 TreeView의 메소드를 사용하십시오.

GetChildAtPoint(Point)

그리고 그 아래에 아이를 추가하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top