Drag
-
WPF Drag, Drop이 되는 ListBoxC#/WPF 2018. 2. 27. 09:45
이전 포스트(2018/01/30 - [C#/WPF] - WPF 한 ListView(ListBox)에서 Drag Drop)에서 ListBox에 Drag & Drop이 가능하도록 해보았었습니다. 하지만 단일 Item 만 Drag & Drop이 가능했었던 점, Drop이 될 위치가 보이지 않는 점 등 굉장히 기초적인 내용이였습니다. 이제 위에 서술된 내용 + 자잘한 내용등을 수정하여 재사용이 가능한 사용자 정의 컨트롤을 만들었습니다. ※ ListBox 의 Item 내용은 유일(Unique)해야 합니다. (Remove 관련) ※ Item을 꼭 GGData형으로 할 이유는 없으며, GGData 내부 Item의 형을 바꾸셔도 되고,GGData형을 사용하지 않을 경우 cs파일에서 GGData를 원하는 형으로 바꾸시면..
-
WPF ListView(ListBox) 드래그 하는 중 스크롤C#/WPF 2018. 1. 31. 11:06
※이 글은 ListView or ListBox에서 Drag기능을 구현한 다음 사용 가능합니다. ListView나 ListBox 컨트롤(List 컨트롤)에서 Item을 드래그 하며 순서를 바꾸는 도중, 현재 보이는 Item이 아닌 스크롤을 통해 이동하여 위치시켜야 하는 경우가 있습니다. Drag를 통해 List 컨트롤의 현재 Vertical Scroll을 옮기는 방법입니다. 해당 List 컨트롤에 DragOver EventHandler를 추가해줍니다. 123456789101112131415161718private void MyList_DragOver(object sender, DragEventArgs e){ ListView listView = sender as ListView; ScrollViewer sc..
-
WPF 한 ListView(ListBox)에서 Drag DropC#/WPF 2018. 1. 30. 10:47
WPF에서 ListView or ListBox(이하 List 컨트롤)와 같은 List 컨트롤 들에서 Item을 Drag, Drop하는 일이 자주 있습니다. 그런데 한글 자료로는 별로 없고 해외 자료들은 두 List 컨트롤 간에 Drag Drop이 주를 이루더군요. 그래서 여러 자료들을 찾고, 참고하여 한 List 컨트롤 내에서 Drag Drop으로 순서 바꾸기를 구현했습니다. 2018.01.29 - 아직 Item 사이에 커서가 위치한 상태로 Drop을 하면 맨 아래로 Drop되는 문제가 있습니다. 우선 List컨트롤에 아래의 EventHandler들을 추가해주어야 합니다.PreviewMouseLeftButtonDownPreviewMouseMoveDrop 또한 AllowDrop 속성을 True로 바꿔주어야..