2011-05-19 53 views
1

我有一個帶有兩個面板(System.Windows.Controls.Panel)的「圖表」。一個面板是「RowsPresenter」,並處理佈置行,然後處理佈局項目(每行多個項目)。由於覆蓋元素在不同面板中導致元素拖動斷開

另一個面板是「LinesPresenter」並處理不同項目之間的繪製線條,這些線條通常跨越多行。

這兩個面板具有相同的尺寸和位置。

我有能力在其包含的行中拖動一個項目。這是通過跟蹤MouseDown,MouseUp,MouseMove等事件(在行上,而不是單個項目)來處理的。但是,當我拖動一個項目並且鼠標光標觸及這些行之一時,MouseLeave事件在行上觸發。這個MouseLeave事件基本上停止了拖動操作。如果我不附加此事件,則其他使用情況會中斷。

有沒有一種簡單的方法來解決這個問題,而無需使用類似CaptureMouse重新設計整個拖動系統?

回答

1

LinesPresenterIsHitTestVisible屬性設置爲false。這應該解決它。