我使用OdbcAdapter填充了数据表。我知道这个表中有数据,因为如果我设置了一个断点,我看到它有5列,计数为852.
我尝试将此表作为绑定源的数据源,然后将此绑定源附加到DataGridView,并将表直接设置为DataGridView的源。
在这两种情况下,gridview中都有0行,并且不显示任何内容。任何帮助将不胜感激。
这是我的代码:
private void populateTable() {
String query = "SELECT * FROM MASKENCODE";
OdbcCommand command = new OdbcCommand(query, Program.myConnection);
OdbcDataAdapter adapter = new OdbcDataAdapter(query, Program.myConnection);
DataTable table = new DataTable();
adapter.Fill(table);
table.DefaultView.AllowDelete = false;
table.DefaultView.AllowEdit = false;
table.DefaultView.AllowNew = false;
//table.Locale = System.Globalization.CultureInfo.InvariantCulture;
//bindingSource1.DataSource = table;
//dataGridView1.DataSource = bindingSource1;
dataGridView1.DataSource = table.DefaultView;
if (table.Rows.Count > 0) {
Console.WriteLine("TABLE EXISTS");
}
if (dataGridView1.RowCount > 0) {
Console.WriteLine("GRID EXISTS");
}
}
我总是得到“TABLE EXISTS”打印而不是“GRID EXISTS”打印
答案 0 :(得分:3)
检查AutoGenerateColumns
是否主要在设计器文件中设置为true。如果没有添加下面的代码行来自动生成列。
dataGridView1.AutoGenerateColumns = true;