【问题标题】:Silverlight drag n drop element hides when outside of ListBoxSilverlight 拖放元素在 ListBox 之外隐藏
【发布时间】:2013-03-05 03:10:00
【问题描述】:

我使用内置的 MouseDragElementBehavior 类实现了将图像从 Grid 拖放到另一个 Grid。然后我需要对源项目使用更复杂的布局,因此使用 ListBox 和 ItemTemplate。

现在的问题是当从 ListBox 中拖动一个项目时,它仅在 ListBox 上方可见。如何在拖动时使其始终可见并跟随鼠标光标?

【问题讨论】:

  • 没有“内置”MouseDragElementBehavior 它甚至在 Silverlight SDK 中都没有,它实际上在 Blend SDK 中。
  • 它在 Microsoft.Expression.Interactions 程序集中。抱歉,我不知道它在哪个 SDK 中。

标签: silverlight drag-and-drop listbox z-index


【解决方案1】:

我建议您使用 Silverlight Toolkit ListBoxDragDropTarget 控件,而不是使用 Blend SDK 编写自己的实现。

该项目在您的元素中消失的原因是 MouseDragElementBehaviour 正在简单地应用渲染变换来影响移动。然而,ListView 将其项目面板放置在 ScrollViewer 中,该 ScrollViewer 将其内容剪辑到其视口。

【讨论】:

  • 我知道工具包,但想以“手动”方式完成它,因为我现在已经付出了一些努力。有没有不使用工具包的快速解决方法?如果没有,我会把你的答案标记为正确的!非常感谢安东尼!
  • @David:我想不出一个“快速”的解决方法。您需要创建ListBoxItem 的克隆,将其添加到包含Grid,设置其初始转换,使其覆盖原始列表框项,然后拖动它。无论您使用哪种解决方案,它都会与您目前所拥有的非常不同。
猜你喜欢
  • 2012-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-22
  • 2018-12-07
  • 1970-01-01
  • 2016-07-22
相关资源
最近更新 更多