2008-11-03 8 views
2

NodeMouseClick 이벤트에서 Node.Tag에서 일부 객체를로드하려고합니다. 그렇게하기 전에 e.Node.IsSelected를 확인합니다. 정기적으로 IsSelected를 실행하면 false가됩니다. ... 거기에 브레이크 포인트를두고 e.node.Isselected를 확인하면 값이 변경되어 true가됩니다. 왜?winform treeview 도움말 isSelected weirdness

답변

3

NodeMouseClick 이벤트는 선택 항목이 실제로 변경되기 전에 발생합니다. 동일한 노드를 두 번 클릭하면 두 번째로 e.Node.IsSelected가 실제로 적용됩니다.

AfterSelect 이벤트를 처리 할 수는 있지만 키보드를 사용하여 탐색 할 때 발생합니다 treeview, 귀하의 목적에 더 좋을 수도 있습니다.

+0

그럼 내 문제가 있습니다. – nportelli

0

문제를 재현하려했지만 시도 할 수 없었습니다. 처음으로 노드를 클릭하면 중단 점을 설정했는지 여부에 관계없이이 값은 항상 false입니다. 두 번째로 노드를 클릭하면 값이 참입니다.

노드가 기본적으로 선택되면 값은 true가되지만, 그렇지 않으면 첫 번째 클릭에서 항상 false가 반환됩니다.

+0

나는 내가하고있는 일이 매우 혼란스럽고 UI 디자인이 매우 좋음을 인정할 것이다. 그러나 예. 한 번 확인합니다. 값은 두 번째로 거짓이며, 스테핑없이 true로 바뀝니다. 나는 그 이상한 것을 발견했다. – nportelli