2011-12-08 3 views
3

노드가 제거되거나 추가 될 때 트리거 할 수있는 winforms의 TreeView 컨트롤에 대한 이벤트가 있습니까?노드가 제거되거나 추가 될 때 TreeView 이벤트

아니요, 그렇다면 어떻게 직접 TreeView에 이벤트를 추가 할 수 있습니까?

+1

아니요, 사용자는 노드를 추가하거나 제거 할 수 없습니다. 그것은 항상 당신 자신의 코드에 의해 수행됩니다. 노드를 추가하는 코드를 작성 했으므로 노드를 추가했음을 알 필요가 없습니다. 필요한 경우 자신의 일정을 올릴 수 있습니다. –

+0

이 스레드를 참조하십시오 : http://stackoverflow.com/questions/469072/create-an-event-handler-whenever-a-new-node-is-added-in-treeview –

+1

@Hans 나는 그것이 통제되어야한다는 것에 동의합니다. 내 쪽에서. 문제는 이미 응용 프로그램에 대한 코드를 많이 작성했기 때문에 돌아가서 모든 코드를 편집하여 트리 뷰에 대한 작업을 수행하거나 해당 이벤트로 새 트리 뷰를 만들면 이벤트 처리기를 추가해야합니다. –

답변

3

간단한 대답, 아니 이러한 목표를 달성하는 방법이 모두 포괄하지 않습니다되어 떨어져 화재 -

은 그럼 당신은 재정의 추가 할 수 있습니다.

환경을 완전히 제어 한 경우 클래스 래퍼를 만들고 모든 클라이언트가 Add() 메서드를 호출하도록 할 수 있습니다.

그러나 대부분의 코드는 대체 할 수없는 TreeNodeCollection에 대해 작동합니다.

사용자 정의 방법을 우회 myTree.Nodes[0].Nodes.Add(...); 또는 myNode.Nodes.Add(...); 또는 다른 경로 데이터 바인딩 같은 ...

그래서.

4

는 추가에 대한 기본 EventHandle가없는 것으로 생각된다 http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.treeview_events%28v=VS.90%29.aspx 보면/그래서 당신이 할 수있는 것은 트리보기에서 상속 사용자 정의 트 리뷰 쓰기입니다

를 제거합니다. > 이벤트 핸들러

+2

잘못된 클래스입니다. Winforms 질문입니다. 그렇지 않으면 정확합니다. –

+0

좋은 답변 +1, System.Windows.Forms.TreeView에 대한 링크를 수정하십시오. –

관련 문제