将元素列表绑定到 DataGrid

Binding Lists of Elements to an DataGrid

我在将数据绑定到 WPF DataGrid 时遇到问题。

有个class喜欢(简体):

public ClassToShow
{
    public int ANumber {get; set;}
    public List<bool> TheList {get; set;}
}

现在我需要一个显示这些数据的数据网格。 TheList 在每个 object 网格中具有相同数量的元素。

所以应该有

ANumber | TheList[o] | TheList [1] | ...

我尝试了很多...最后在 DataGridTemplateColumn 中添加了一个 Listbox,但是如何设置 header 呢?!?


现实中更像这样:

public class ClassToShow
{
    public int row {get; set;}
    public List<CheckBoxElement> Cl{get; set;}
    public List<TextBoxElement> Tl{get; set;}
    public List<string> Steps {get; set;}
}

与 public class CheckBoxElement { public 字符串名称 {get;放;} public 布尔值 {get;放; } }

和 public class TextBoxElement { public 字符串名称 {get;放;} public int 值 {get;放;} }

然后有一个列表,其中包含 Cl 和 Tl 中每个值的状态。

因此我需要这样的 DataGrid:(第一行是 Header,第二行来自 bool-list 要显示的元素从第三行开始。

   | Cl[0].Name | Cl[1].Name |...| Tl[0].Name |...| Step
--------------------------------------------------------------
   | Checkbox   | Checkbox   |...| Checkbox   |...|
--------------------------------------------------------------
1  | Checkbox   | Checkbox   |...| Textbox    |...| Combobox
2  | ...
....

它可以通过模板制作:为数据网格的标题制作一个模板,然后将复选框(或任何您需要的)放在那里。