好吧,伙计们,我一直在为这个问题疯狂地挠头,并花了几个小时试图研究它是如何工作的,但我还没有找到答案,如果你想看到我的任何SRC随时询问它,我会看看我是否能提供帮助。
基本上,我遇到的问题是,我有一个TreeView
的文件夹在我的应用程序,即:
Catalog
Brands
Nike
Adidas
Lactose
Styles
Sandles
Trainers
Boots
我试图解决的问题是,当我拖动一个文件夹时(这是在我的DragDropManager
类中处理的),我无法向上或向下滚动(只是显示一个可爱的停止符号)。我也无法在TreeView中找到滚动器,所以我不确定它是如何生成的(这不是我自己的软件,我最近开始为一家公司工作,所以我不熟悉代码,似乎也没有其他人知道。)
这是一个问题,如果我想把东西从最上面移到最下面。
滚动本身工作正常,而不需要拖动。
如果任何人希望看到我的代码的任何部分,请随时询问,因为我不确定实际上要向你们展示什么。
我读了好几篇文章,只是挠头。
3条答案
按热度按时间bmvo0sr51#
我已经创建了一个附加的属性来实现这个行为,看看我的帖子在这里-
Attached Behavior for auto scrolling containers while doing Drag & Drop
主要逻辑是这样的-
SO上类似的问题(虽然它们主要针对
ListBox
/ListView
,但也应该适用于TreeView
)-WPF Listbox auto scroll while dragging
WPF ListView Databound Drag/Drop Auto Scroll
WPF Drag-to-scroll doesn't work correctly
u3r8eeie2#
我知道这个问题很老了,但这里是MVVM作为附加属性的方式:
它可以像这样使用:
3htmauhk3#
基于@akjoshi的回答,但我想要变速,同时像这样下降:
我的
PreviewDragOver
处理程序是这样的:完整的代码和示例github.