请教 VB.NET WinForm中的dataGridview数据源改变时如何清空?
请教 VB.NET WinForm中的dataGridview数据源改变时如何清空?
DataGridView1.DataSource = ds.Tables(0)
我因为是通过不同的查找条件得到不同的栏位结果,所以,我winform上只有一个Datagridview, 如果查第一个条件时的结果有5个栏位, 而查第二个条件时的结果是 8个栏位。而且栏位都不同。
现在问题时,我查第一条件后,再查第二条件时的结果,却无法在datagridview中显示第二条件中的所真正出现的栏位。它还只是第一个查找时的栏位个数。 相当于无法刷新。
我试着在查找前加 datagridview1.rows.clear()
但是第一次运行时会出错。
那到如何清空初始化呢? 请指教,谢谢!
[解决办法]
datagridview.datasource=nothing
datagridview.SuspendLayout()
datagridview.columns.clear
datagridview.datasource=(第二次的数据集)
datagridview.refresh
datagirdview.resumelayout
[解决办法]
清空方法是清空DataSet
DS.Clear
一般DS要定义在外层
class form1
dim ds as dataset
sub form_load(sender as objet,e as eventargs) me.load
.....
.....
.....
ds.clear
end sub
end class
[解决办法]
DataGridView1.DataSource=nothing
[解决办法]
DataGridView1.AutoGenerateColumns = False
改为
DataGridView1.AutoGenerateColumns = True