Dot-Net

如何將依賴項注入 WPF 中的使用者控制項

  • May 31, 2019

將依賴項(使用 IOC 容器)透明地註入 WPF 中的使用者控制項的最佳方法是什麼?

我假設使用者控制項是視窗或其他使用者控制項的 XAML 的一部分。我也認為父母(不管是誰)不應該對此負責。從父級手動注入依賴項的解決方案對我來說看起來不夠乾淨。我想避免顯式管理組件的依賴關係,因為它違背了 IOC 的想法。

在創建邏輯樹時是否會引發任何事件,以便我可以攔截它並註入我的依賴項?

編輯:依賴關係我也指 ViewModel、Controller、Presenter(無論使用什麼模式)

謝謝,安德烈

在 WPF 中處理依賴關係的最佳方法是遵循MVVM 模式

簡而言之,您不會將依賴項直接注入到使用者控制項 (View) 中,而是注入到它們的DataContext (ViewModel) 中。

FrameworkElement 有一個 Initialized 事件,您可以連接並註入依賴項。您應該測試它是否足夠早地滿足您的場景。

引用自:https://stackoverflow.com/questions/2408873