끌어서 놓기를 지원하는 트리 뷰의 끌어서 놓기를 구현하고 있습니다.부모 요소를 기준으로 마우스를 가리키는 위치를 결정하는 방법
트리에 폴더와 파일이 있습니다. 폴더의 아래쪽 25 % 위로 드래그하면 다시 정렬됩니다. treeviewitem의 상위 75 %를 드래그하면 내용이 이고 폴더가이됩니다.
요소의 위치를 어떻게 결정합니까? 다음은 작동하지 않는 시도입니다.
private bool ShouldReorder(TreeViewItem targetItem)
{
var relativePosition = PointToScreen(Mouse.GetPosition(targetItem));
return relativePosition.Y/targetItem.ActualHeight < 0.25;
}
이 코드의 음수는 상대적인 위치는 제외됩니다. 화면으로 변환 한 후