我的进度条有问题。我有一个按钮(SELECT * FROM Table
)。
当我点击它时,我想在datagridview中显示数据。没关系,工作正常。
但是现在我需要创建一个进度条,而数据正在从DB中读取。
默认情况下,进度条可见为false。在阅读时 - 可见的进度条是真实的。
当从DB读取数据时,可见的进度条应该再次为假。
我有一个代码,但它的工作原理不正确(1.进度条有问题等等)也许你可以提供另一种变体?
private void button3_Click(object sender, EventArgs e)
{
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
progressBar1.Visible = true;
progressBar1.Minimum = 10;
progressBar1.Maximum = 100;
progressBar1.Increment(+10);
if (progressBar1.Value == 90)
{
groupBox3.Enabled = true;
connect con = new connect();
DataTable data = connnection.query("SELECT * FROM User WHERE surname LIKE '" + textBox1.Text + "%'");
dataGridView1.DataSource = tb;
}
if(progressBar1.Value == 100)
progressBar1.Visible = false;
}
答案 0 :(得分:0)
你需要重新思考你的逻辑。
当您将SQL调用视为在程序外部运行的代码时,意味着您只能启动它并等待它完成,但您将无法访问内部进程,例如它的进展程度。
您可以选择做什么:
RunWorkerCompleted
发生,您就可以删除“请等待”并绑定数据。