嗨,我想通过在 UserControls 中拥有离散的功能单元来扩展我的应用程序,然后将其中的几个放在我的主页上的 ContentControls 网格中。我需要能够在网格中的控件之间进行通信。
我想知道,他们交换数据的最佳方式是什么。该应用程序是一个 MVVM 设计,每个用户控件都有自己的 ViewModel。每个主窗体的 ContentControls 'Content' 属性都绑定到主窗体的视图模型中的一个属性,该属性提供要在该 ContentControl 中显示的用户控件。
例如,假设我想要一个增强的文件浏览器,所以我将它构建到一个 UserControl 中。然后我在另一个用户控件中有一个文件查看器。我希望能够在主窗体的网格中同时显示它们。当我使用浏览器选择一个文件时,我希望所选文件对查看器用户控件可用。
我使用了这种设计,以便我可以在应用程序中任何需要的地方重用每个功能块。我不清楚如何最好地在它们之间传输数据,因为在我的设计中它们彼此不知道。有什么建议吗?谢谢!