我的WPF窗口使用AvalonDock安排不同的佈局。在一個佈局中,我有類似於FileManager控件的東西。在FileManager控件內部有一個標準的WPF TreeView控件。在FileManager控件中,我希望允許用戶從Windows資源管理器拖放文件。但是,當我從資源管理器拖動文件到我的AvalonDock窗口時,它會顯示我禁用的圖標 - 無論我是否通過FileManager控件或窗口中的任何其他佈局。 曾嘗試在VisualTree中的每個元素上添加AllowDrop(包括窗口,Avalon對接管理器,網格等) 當我在運行時檢查我的窗口(使用SnoopUI和WPF Inspector)時,我發現所有佈局都設置了「AllowDrop」爲真!WPF AvalonDock和禁用的拖放功能
這裏在運行時檢查窗口史努比:
這是因爲我的窗前,不知何故禁用拖放功能(從其他程序)不管我在AvalonDock佈局控件和模板設置。
有沒有辦法在啓用AvalonDock的應用程序中從其他程序中拖放文件?
是的,我已經將所有這些事件和處理程序,它仍然阻止拖放(例如,當拖動窗口時顯示阻塞圖標)。 – VladacusB
和你在over事件中管理效果? private void listViewContent_DragOver(object sender,DragEventArgs e) if(!e.Data.GetDataPresent(「CBR.Book.Path」)) e .Effects = DragDropEffects.None; return; } ...還需要管理drag_start事件和效果 – GCamel