我有一个需要使用 MVVM 设计 WPF 屏幕的请求。此屏幕有两个 DataGrid。
第一个数据网格将绑定到一个集合,数据网格将能够从中添加或删除项目。
现在,棘手的部分是我需要第二个 DataGrid 使其列从第一个 datagrid 绑定到的集合中的项目自动生成。
例子:
如果第一个 DataGrid 有三行:
| Value 1 |
| Value 2 |
| Value 3 |
我需要我的第二个数据网格有这三列:
| Value 1 | Value 2 | Value 3 |
但是,我正在尝试一种不涉及手动将这些列添加到第二个数据网格的方法来实现这一点,因为我相信这会扼杀“MVVM 方式”的做事方式,原因有两个:
我希望我的视图的代码隐藏文件保持“空”(除了视图构造函数上自动生成的“InitializeCOmponent()”之外,我不能向其中添加任何代码)
我不能让我的 ViewModel 实际持有对 DataGrid 的引用,因为我相信这会在 View 和 ViewModel 之间建立牢固的联系。
由于这两个原因,有没有人知道一种只涉及绑定的方法(或不违反这两个规则的其他解决方案?)