如何为我的DataGrid分配非自动生成的列

时间:2013-08-14 01:21:16

标签: c# wpf datagrid tuples cell

在WPF上,我应该如何分配我在代码中添加的列?由于我没有与之相关的属性,我无法与它们绑定。

例如,我有一个充满人的列表(或数据库),我想创建一个DataGrid,其列与其职业历史相关联。因此,我将浏览整个列表,首先获得职业人员列表,并使用DataGrid.Columns.Add添加为列。我希望每个单元格显示他们在这份工作中工作了多少年。所以每一行都不会被填满。有些人只在一个地方工作,有些人在两个地方工作过。

我应该如何实现这一目标?我为每个人List<Tuple<string, int>>创建了一个Item1,其中Item2将占用特定行。{/ p>

我希望我可以修改行,但不像列DataGrid.Rows不存在。我怎样填写细胞?

以下图片是我想要实现的excel表示。 (再次,行代表一个人专栏代表他/她的工作经历)

http://clip2net.com/clip/m232864/1376442421-clip-3kb.png

在另一个列表中,您可能会有以下列表等

enter image description here

1 个答案:

答案 0 :(得分:1)

使用DataTable - 根据找到的整个职业列表添加适当数量的列,然后使用每个人的信息创建一行。如果将DataGrid绑定到ViewModel中的DataTable,它将为您自动生成相应的列。

这个答案显示了如何: https://stackoverflow.com/a/9306756/1329939