2010-08-03 85 views
1

我有一個用戶控件,它有2個控件A和B. 現在,A和B在他們的DragDrop事件中有自己的邏輯。讓父母處理子控件事件或命令WPF?

擁有這兩個控件的父級必須以自己的方式處理這些事件中的DragDrop。所以我在父母的東西,像parent.A.DragDropEvent + = new EventHandler()等...

現在,我想要處理父控件中的兩個控件的DragDrop事件,而不是讓兒童處理它他們自己。另一方面,如果這些控制是獨立使用的(不在父控制範圍內),那麼我希望他們自己的邏輯工作或接管。

我該如何做到這一點?謝謝!

回答

3

爲您的子控件添加一個像HandleDragDrop這樣的布爾屬性,並讓它們只處理拖放操作,如果該屬性爲true。默認情況下爲真。在父控件中將其設置爲false。

2

如果你不想讓孩子控制只顯示,但在他們有父母的實現中不能互動,你可以在他們擁有父母的xaml上設置IsHitTestVisible =「false」,然後所有的交互都會去父母。