DataTable我从 SQL 查询中填写一个,然后DataGridView从该表中提取数据。
dataGridView1.DataSource = new BindingSource(t,null);
我在这张表中有 12 列。无论如何,前 4 个和后 4 个都正确显示。但是在第 5 个值为空的行中,第 6 个值是“向前移动”。
正常情况:
val1, val2, val3, val4, val5, val6, val7, val8, val9, val10, val11, val12
如果 val5 为空:
val1, val2, val3, val4, val6, val7, val8, null, val9, val10, val11, val12
问题是什么?
编辑:查询:
using (SqlConnection c = new SqlConnection(qString))
            {
                c.Open();
                // use a SqlAdapter to execute the query
                using (SqlDataAdapter a = new SqlDataAdapter("SELECT val1, val2, val3, val4, val5, val6, val7, val8, val9, val10, val11, val12 FROM table WHERE %CONDITIONS%", c))
                {
                    // fill a data table
                    var t = new DataTable();
                    a.Fill(t);
                    dataGridView1.DataSource = new BindingSource(t, null);
                }
            }
解决方案:我是个白痴。我的UNION查询中有一个从另一个表中提取相同的值,并且查询的第二部分中的值的顺序不一样。