0

我遇到了一个 WPF DataGrid 问题,我真的不知道如何解决。问题是我目前有一个绑定到静态资源的 DataGrid。这个资源是一个 CollectionViewSource 绑定到我的视图模型中的 ObservableCollection 属性。(CollectionViewSource 的原因是在 XAML 代码中定义网格的排序顺序。)DataGrid 中的列是“静态的”,因为我AutoGenerateColumns="False"在 XAML 中手动定义了列。有些列是使用转换器计算的。目前这一切都很好。

但是现在我有一个要求,即在网格中现有的“静态”列的中间,我应该添加未定义数量的“动态”列,并且列数实际上取决于绑定到网格的数据。

例如,假设我在网格中有一行代表公司的销售人员。对于每个销售人员,网格中都有一些“静态”列,显示诸如年龄、薪水、鞋码等信息。还有不同类型的销售人员,比如说 A 型和 B 型。如果我在下拉菜单中选择 A 型- 在 GUI 中,网格还应显示每个人负责的销售区域的列。A 类销售人员可以(但不必)负责区域 1、2 和 3。B 类销售人员可以负责区域 6、7、8 和 9。因此对于选择的每种类型,网格应该显示每个区域的列并填充单元格,如果此人实际上负责该区域。

我希望这个简单的例子有意义。那么我将如何将它引入我现有的 DataGrid 中呢?

4

0 回答 0