기본 메뉴 양식처럼 클릭되는 트리 뷰 노드에 해당하는 적절한 그룹 상자를 표시하는 코드를 생성했습니다. 이 코드는 할 일을하지만 내 문제는 트리 뷰의 다른 항목을 마우스 오른쪽 버튼으로 클릭하면 다른 groubox가 호출되지 않도록 만드는 방법을 알아내는 것입니다.C# : NodeMouseClick 이벤트를 통해 트리 뷰 항목을 반복하는 데 도움이됩니다.
[상세보기]
트리 뷰에는 3 개의 노드가 있다고 가정 해 봅시다. 0) 일반; 1) 소리; 2) 정보; 노드 [1] 소리를 클릭하면 적절한 그룹 상자가 표시되지만 treeview 노드 [0] 일반을 마우스 오른쪽 버튼으로 클릭하면 프레임이 표시되고 마우스 오른쪽 버튼을 클릭하면 포커스가 되돌아옵니다 [1] (으)로 돌아가서 노드 0에 대한 그룹 상자는 그대로 두십시오.) 일반. 어떻게 이런 일이 일어나지 않도록 할 수 있습니까?
[코드]
private void tvFrames_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
// How would I make sure that it won't display a different groupbox if another treeview node
// is currently being right clicked (temporarily selected before reverting back to previous focused node item)?
if (e.Node != null)
{
switch (e.Node.Index)
{
case 0:
ShowGroupBox(groupboxZero);
break;
case 1:
ShowGroupBox(groupboxOne);
break;
case 2:
ShowGroupBox(groupboxTwo);
break;
}
}
}
이러한 이벤트가 있음을 지적 해 주셔서 감사합니다. nodeclick에서 afterselect 이벤트로 루틴을 전송했는데 완벽하게 작동했습니다. –