當我不設置我的面板背景時,我無法獲得鼠標事件。爲什麼這種行爲? 默認情況下,我可以通過將透明背景設置爲null來在面板上獲取鼠標事件。 Background null和Transparent有什麼區別?Wpf面板背景問題
3
A
回答
7
當Background=null
渲染時不會發出任何繪圖命令MILCore,並且它不指望在命中測試控制的整個區域。
當Background=Transparent
,它渲染時發出一個普通的繪圖命令MILCore,它也控制命中測試的整個區域。
Brushes.Transparent
實際上是一個普通的刷子與它的α(不透明度)的信道設置爲零。正因爲如此,在大多數情況下,它就像普通的顏色一樣。如果背景是普通顏色,則會檢測到鼠標點擊,因此它們也會被檢測到Brushes.Transparent
。
這就是說,存在代碼檢測Brushes.Transparent和完全省略繪圖命令優化它帶走了幾個地方。例如,這發生在窗口透明與操作系統的交互中:操作系統沒有被通知任何塗有Brushes.Transparent
的區域是應用程序的一部分,因此單擊它不會執行任何操作。這是通過特殊外殼Brushes.Transparent
爲此目的完成的。
相關問題
- 1. WPF ToggleButton背景問題
- 2. Django模板背景問題
- 3. datagrid(WPF)中的背景色問題
- 4. WPF中的背景屬性問題
- 5. 背景問題
- 6. 半透明面板背景
- 7. ExtJS&Css面板背景的
- 8. 背景面板在asp.net
- 9. C渲染面板背景#
- 10. 問題獲得背景頁面
- 11. 完成封面背景圖片問題
- 12. IE7背景問題
- 13. Css背景問題
- 14. android背景問題
- 15. AppMobi背景問題
- 16. AVPlayer背景問題
- 17. cu3er背景問題
- 18. UITableView背景問題
- 19. UIAlertView背景問題?
- 20. 簡單的WPF'面板'問題
- 21. 虛擬化WPF包裝面板問題
- 22. WPF面板標題標題
- 23. WPF DataGrid背景
- 24. WPF TreeViewItem背景
- 25. WPF頁面背景加載中...如何?
- 26. IE6背景位置(?)問題
- 27. 背景問題 - 擴展
- 28. WordPress的背景問題
- 29. 背景圖像問題
- 30. CSS背景重複問題
是否在MILCore上執行所有渲染? – viky 2009-11-12 09:07:07
MILCore是微軟的WPF本地(非託管)部分的名稱,用於維護渲染數據,通過通道編組它(用於遠程處理)並調用Direct3D執行實際渲染。最準確的說,它是你的顯卡的驅動程序和硬件來完成實際的渲染,如果顯卡無法實現它,則會回退到軟件。視頻卡的驅動程序通過Direct3D定義的接口訪問,Direct3D由WPF的非託管角色「MILCore」調用。 – 2009-11-12 18:44:02
感謝您的一切幫助 – viky 2009-11-13 04:36:08