我将 UserControl 对象从一个 Canvas 拖到另一个 Canvas 的目的是放在那里。将鼠标悬停在目的地上时,拖动的对象实际上在其下方。我没有得到 DragEnter、DragOver 或 DragLeave 事件。如果我将对象放在那里,我不会收到 Drop 事件。
我的根对象是一个边框,然后是一个网格。网格覆盖了整个浏览器客户区。它有 8 列。在每一列中都有一个由 XAML 放置的画布。
奇怪行为的示例:当我将一个项目从第 3 列拖到第 4 列(或任何更大)时,对象在画布下滑动。如果我从第 3 列拖到第 2 列(或更小),对象会滑过顶部。因此,zorder 似乎受到画布创建顺序的影响。有人可以澄清一下吗?
每列中的 Canvas 对象都有关联的 DragEnter/Leave 事件,但无论对象在 Canvas 上方还是下方,它们都不会触发。
我发现 Canvas 必须有背景才能获取鼠标事件。列中的每个画布都有一个背景。如果我不拖动任何东西,鼠标事件就会触发。
我快到我的尽头了,我肯定会很感激一些帮助。
谢谢,格雷格