datagridview数据绑定问题,最后三十分了,达人指点
sqlConnection.Open();
//动态构建查询语句,每次生成的语句都可能不相同,这也引起了datatable架构的不同
SqlCommand sqlCommand = new SqlCommand(buildGroup(), sqlConnection);
SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand);
//如果应用下面这句(其中dataTable已在类成员级别进行了定义),则在第二次运行这个过程后,dataGridview中显示不出数据,只有一个标题行
//dataTable.Reset();
//如果应用下面这句,而不用上面的,程序运行正常,但是这样做,是不是在多次运行这段程序后,由于GC过程的不确定性,引起内存的大量占用呢?
DataTable dataTable = new DataTable();
sqlDataAdapter.Fill(dataTable);
dataGridView1.DataSource = dataTable;
简单说一下:上面的那段代码,是按钮事件的一部分,就是动态构建SQL语句,查询结果与datagridview控件绑定。如果不每次都New一个DataTable的话,哪么第二次点击按钮执行这段程序后,绑定显示结果是不正常的,如何使之显示正常呢?
------解决方案--------------------为什么要RESET? 你要重新读数据就要NEW出来 不过一般你可以把DATATABLE放在APP或者缓存中节省读取开销 不用再FILL
------解决方案--------------------每次:dataTable = new DataTable();