Dot-Net
如何將依賴項注入 WPF 中的使用者控制項
將依賴項(使用 IOC 容器)透明地註入 WPF 中的使用者控制項的最佳方法是什麼?
我假設使用者控制項是視窗或其他使用者控制項的 XAML 的一部分。我也認為父母(不管是誰)不應該對此負責。從父級手動注入依賴項的解決方案對我來說看起來不夠乾淨。我想避免顯式管理組件的依賴關係,因為它違背了 IOC 的想法。
在創建邏輯樹時是否會引發任何事件,以便我可以攔截它並註入我的依賴項?
編輯:依賴關係我也指 ViewModel、Controller、Presenter(無論使用什麼模式)
謝謝,安德烈
在 WPF 中處理依賴關係的最佳方法是遵循MVVM 模式。
簡而言之,您不會將依賴項直接注入到使用者控制項 (View) 中,而是注入到它們的DataContext (ViewModel) 中。
FrameworkElement 有一個 Initialized 事件,您可以連接並註入依賴項。您應該測試它是否足夠早地滿足您的場景。