我有一个数据网格和一个刷新按钮。我想点击它时刷新数据但不会。我还删除了SQL Server中的所有行,但数据仍然存在。
这是我的按钮代码:
Student std = new Student();
dataGridView1.DataSource = false;
dataGridView1.DataSource = std.List();
这是我的List()
函数:
public DataTable List()
{
try
{
sdl.Command.CommandText = this.GetType().Name + "_List";
var dt = new DataTable();
dt.Clear();
SqlDataAdapter sda = new SqlDataAdapter(sdl.Command);
sda.Fill(dt);
return dt;
}
catch (Exception ex)
{
this.Message = ex.Message;
throw;
}
finally
{
if (sdl.Connection.State == System.Data.ConnectionState.Open)
{
sdl.Connection.Close();
}
}
}
答案 0 :(得分:0)
我认为你只需要下面的行
dataGridView1.DataBind();
答案 1 :(得分:0)
假设您正在使用Windows窗体,刷新数据网格内容,假设std.List()工作并实际获取新数据,您可以尝试:
this.dataGridView1.EndEdit(); //end current edits if you allow this (optional)
this.dataGridView1.DataSource = null; //reset datasource binding
this.dataGridView1.DataSource = std.List();
过去一直在争论这个话题,例如:参见:Refresh dgv
答案 2 :(得分:0)
DataSet ds = new DataSet();
ds.Tables.Add(List());
DataGridView1.DataSource = ds.Tables[0].DefaultView;