当我第二次或更多次登录时,我正试图将数据更改到datagridview中。
问题是:当我从文本框登录时,来自SQL Server的数据显示在Datagridview中,但在我注销并再次登录后,初步帐户的详细信息仍保留在Datagridview中。如何替换或刷新datagridview,以便其他帐户数据替换以前的帐户详细信息?
谢谢。
代码:
private void btn_qkyqu_Click(object sender, EventArgs e)
{
DialogResult dialog = MessageBox.Show("Deshironi te dilni?", "Mbylle", MessageBoxButtons.YesNo);
if (dialog == DialogResult.Yes)
{
textBox1_Pin.Text = null;
groupBox2.Visible = false;
btn_shiko.Visible = false;
btn_terhek.Visible = false;
btn_depozito.Visible = false;
dataGridView1.DataMember = null;
}
else if (dialog == DialogResult.No)
{
groupBox2.Visible = true;
btn_shiko.Visible = true;
btn_terhek.Visible = true;
btn_depozito.Visible = true;
}
}
我还没有测试过,但这能做到吗?
dataGridView1.Refresh();
更新:
每次登录时,都必须从数据库中获取值,并将其再次绑定到网格。或者,每次单击按钮时,可以先将空数据集绑定到gridview,然后绑定实际值。
grid.DataSource = null;
grid.DataBind();
您的代码没有显示太多。。。如何填充DataGridView?
您有数据源、数据集或适配器吗?您可能需要重新填充数据集。
有时你还需要打电话给
dataGridView1.EndEdit();
// Before...
dataGridView1.Refresh();
因为如果它相信你在编辑模式下,它不会更新任何内容。
此外,有时还必须刷新父对象(绘图问题)
// Last thing to call
dataGridView1.Parent.Refresh();
更新
您可以尝试使用清除数据集
ds.Clear();
// Then refresh the gridview
dataGridView1.Refresh();
GridView现在应该为空。。。
现在尝试用新数据填充数据集
// Clear the DataSet...
ds.Clear();
// Fill the DataSet...
sda.Fill(ds);
// Then refresh the GridView
dataGridView1.Refresh();
在不了解更多代码的情况下,我猜您在再次登录时会进行新的查询,以便您的SqlDataAdapter拥有新数据?
这是因为查询字符串中存在ReturnUrl。你必须覆盖它。