在数据网格WPF中添加多个列c#

时间:2017-10-13 21:52:45

标签: c# wpf datagrid

我是WPF C#的新手,我正在尝试在C#中构建一个WPF数据网格,我想从列表中添加colomns,如下面的代码:

private void addColumn1_Click(object sender, RoutedEventArgs e)
    {

        List<String> headers = new List<string>();
        headers.Add("URC");
        headers.Add("Inv Ini ECP");
        headers.Add("Inv Ini RCSA");
        headers.Add("Inv Fin ECP");
        headers.Add("Inv Fin RCSA");
        headers.Add("Entradas ECP");
        headers.Add("Entradas RCSA");
        headers.Add("Salidas ECP");
        headers.Add("Salidas RCSA");
        headers.Add("Prod ECP");
        headers.Add("Prod RCSA");
        headers.Add("Tran A ECP");
        headers.Add("Tran A RCSA");
        headers.Add("Bal ECP");
        headers.Add("Bal RCSA");
        headers.Add("Tot Inv Ini");
        headers.Add("Tot Inv Fin");
        headers.Add("Tot Entra");
        headers.Add("Tot Cargas");
        DataGridTextColumn textColumn = new DataGridTextColumn();

        for (int j=0; j < headers.Count; j++)
        {

            textColumn.Header = headers[j];
            textColumn.Binding = new Binding("TotBal");
            AcumProp.Columns.Add(textColumn);
        }

但是我在第AcumProp.Columns.Add(textColumn);行收到错误。有不同的方法可以做到这一点吗?我究竟做错了什么?

1 个答案:

答案 0 :(得分:0)

您需要为要添加的每列创建一个新的DataGridTextColumn,即:

...
headers.Add("Tot Entra");
headers.Add("Tot Cargas");

for (int j=0; j < headers.Count; j++)
{
    DataGridTextColumn textColumn = new DataGridTextColumn();
    textColumn.Header = headers[j];
    textColumn.Binding = new Binding("TotBal");
    AcumProp.Columns.Add(textColumn);
}