所以我几乎遵循了我可以找到的关于如何将WPF控件上的拖放效果设置为无以显示带有线符号的圆圈的每个示例,但无效。
以下是我从各种示例中复制的代码,修改它以使其工作:
这是Window背后的代码:
data-src
这是XAML,表明它已经注册了正确的事件:
/<img[^>]+data-src=("[^"]+")[^>]*>/
我没有为辅助方法附加任何代码...那些都可以正常工作,拖动时向上/向下滚动以及在块内交换项目的基本思路都可以正常工作。
然而,愚蠢的图标拒绝改变我。 :)
我甚至尝试在处理程序的最顶部将其设置为None,并且只将其设置为AllowedEffects,如果父项是相同的。
基本上,如果拖动到不相同的父级,图标应切换到带有直线的圆(无)...
我甚至设置断点以确保它进入父母不相同的情况并将效果设置为无。某种程度上,某些东西必须将其切换回来,但我不知道是什么......
答案 0 :(得分:1)
显然,您还必须在设置e.Effects后在处理程序中设置e.Handled = true。完成后,它完美地运作。