C#DataTable不显示最后一列值

时间:2017-10-07 08:48:44

标签: c# wpf gridview data-binding datatable

DataTable dt;

我遇到DataTable的问题。我有一个double[]列表,但它拒绝显示最后一列值。

DataTable old

        for (int j = 0; j < header.Count; j++)
        {
            dt.Columns.Add(header[j]);
        }
        dt.Columns.Add("Extra");
        if ((dataIn as List<double[]>) != null)
        {
            // dataIn = a list of 2 arrays of 3.
            localDataInDouble = dataIn as List<double[]>;
            //Add rows to table
            for (int j = 0; j < localDataInDouble.Count; j++)
            {
                workRow = dt.NewRow();
                for (int i = 0; i < header.Count; i++)
                {
                    workRow[header[i]] = localDataInDouble[j][i];
                }
                dt.Rows.Add(workRow);
            }
            dt.Rows[0][2] = "hello";
            dt.Rows[0][3] = 2.55;
            dt.Rows[1][2] = 2.55;
            dt.Rows[1][3] = 2.55;
        }

        this.csvContent.ItemsSource = this.dt.DefaultView;
        foreach (DataRowView v in this.csvContent.Items)
        {
            var row = v.Row;
            foreach (object o in row.ItemArray)
            {
                Console.Write(o + ";");
            }
            Console.WriteLine();
        }

Console DataTable Extra

正如您所看到的,DataTable的值设置正确,但它们不会在DataTable本身中显示。

我尝试添加&#34; Extra&#34;希望它只是最后一列,然后隐藏额外的列,但这也不是正在发生的事情。

我还手动在DataRow中设置了一些数据,因为它与Extra行一起使用。

如果我在csv文件中添加另一列&#34; Toff&#34;显示其值,但我在csv文件/ inputList中添加的列没有值。

extra csv column

非常感谢帮助。

提前致谢。

编辑:我还尝试在标题列表中添加Extra列,并在inputList中添加一个额外的值。这也不起作用。

编辑2:XAML

<ScrollViewer Name="topLevel" VerticalScrollBarVisibility="Auto"  HorizontalScrollBarVisibility="Auto" >
    <Grid ScrollViewer.VerticalScrollBarVisibility="Auto"  ScrollViewer.HorizontalScrollBarVisibility="Auto" VerticalAlignment="Top" HorizontalAlignment="Center" >
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="100" />
        </Grid.RowDefinitions>

        <DataGrid Name="csvContent" Grid.Column="0" Grid.Row="0" Margin="10,10" CanUserAddRows="False"  ItemsSource="{Binding  Path=DataContext, RelativeSource={RelativeSource Self},  Mode=TwoWay }" />

1 个答案:

答案 0 :(得分:0)

在我的情况下,此问题是由'/'字符引起的,我将其替换为utf版本的斜杠\ u2215。我在Google上搜索了一下,发现还有其他人也有同样的问题。我想可能会有更多的“问题”字符。