你如何绑定一个WPF数据表格,它需要显示来自许多不同数据源的数据,这些数据源具有不同数量的列、不同的列标题和类型?
目前我正在做的是在我的ViewModel中为要在此DataGrid中显示的每个不同记录集创建一个自定义List<DataGridColumn>()
datagrid列列表。
我循环遍历此列表以设置DataGrid列:
foreach (DataGridColumn dgc in dgcSample)
{
dgc.HeaderStyle = hStyle;
dgMyDataGrid.Columns.Add(dgc);
}
最后,我使用ItemsSource来设置项目的来源:
dgMyDataGrid.ItemsSource = SomeCollection;
这个方法可以工作,但它不具有绑定功能,并且违反了MVVM准则,即ViewModel应该对特定的UI元素保持中立,因为现在它必须处理DataGrid并托管一组DataGridColumn对象... 你有什么想法吗?