1
在下圖中,有6個橙色矩形,它們充當拖放目標。藍色矩形位於橙色矩形的前面。藍色和橙色矩形都是同一個容器的子項。如果拖動目標被其他圖形遮擋,WPF拖放事件不會通過
我遇到的問題是,爲dragenter,DragLeave和drop事件,當光標在一個藍色的矩形沒有得到觸發。藍色的長方形似乎阻止了通過橙色矩形的事件。這意味着用戶必須將光標精確定位在藍色矩形之間才能放置該項目。我想擴展下拉區域以包含整個橙色矩形,同時仍然在橙色矩形前面有藍色矩形。
萬一重要,橙色矩形是FrameworkElements,藍色矩形是DrawingVisuals。 FrameworkElements具有拖放功能,而DrawingVisuals是非常簡單的,而不是。
無論光標是否位於藍色矩形上,只要光標懸停,就能觸發橙色矩形的DragEnter,DragLeave和Drop事件?
你可以製作藍色矩形'IsHitTestVisible =「False」'或者你需要攔截藍色矩形的鼠標事件嗎? – 2013-03-22 01:01:59
@ sa_ddam213我在某個時候嘗試過,但'IsHitTestVisible'似乎不適用於DrawingVisuals。 – devuxer 2013-03-22 01:03:10
啊,那麼也許使用'PreviewDragLeave'等橙色rects – 2013-03-22 01:05:34