2011-02-27 72 views
1

我使用內置的MouseDragElementBehavior類將圖像從網格拖放到另一個網格。然後,我需要爲源項目使用更復雜的佈局,以便使用ListBox和ItemTemplate。Silverlight在列表框外拖動n拖放元素隱藏

現在的問題是,當從列表框中拖動一個項目時,它僅在列表框上方可見。如何隨時隨地將鼠標光標拖曳到任何位置?

+0

沒有內置的MouseDragElementBehavior它甚至沒有在Silverlight SDK中找到它實際上在Blend SDK中。 – AnthonyWJones 2011-02-27 21:27:48

+0

它在Microsoft.Expression.Interactions程序集中。對不起,我不知道它使用的是哪個SDK。 – David 2011-02-28 00:01:43

回答

0

我建議您不要使用Blend SDK編寫自己的實現,而應該使用Silverlight ToolkitListBoxDragDropTarget控件。

項目在元素中消失的原因是MouseDragElementBehaviour是簡單地應用渲染變換來影響運動。但是,ListView將其項目面板放置在一個ScrollViewer中,該ScrollViewer將其內容剪輯到其視口。

+0

我知道該工具包,但想要完成它的「手動」方式,因爲我現在已經付出了一些努力。有沒有使用工具包的快速解決方法?如果沒有,我會標記你的答案是正確的!非常感謝安東尼! – David 2011-02-27 23:57:19

+0

@David:我想不出一個「快速」的解決方法。您需要創建一個'ListBoxItem'的克隆,將其添加到包含的'Grid'中,設置其初始轉換,以便覆蓋原始列表框項目然後拖動它。無論您使用哪種解決方案,它與迄今爲止的內容都會有很大的不同。 – AnthonyWJones 2011-02-28 12:48:25