我正在使用C#和Windows Forms.我有一个正常的进度条在该程序中正常工作,但现在我有另一个操作,其中持续时间不容易计算.我想显示一个进度条,但不知道启动/停止滚动选框的最佳方法.我希望有一些简单的东西,如设置选取框速度,然后有一个start()和stop(),但它看起来并不那么简单.我必须在后台运行一个空循环吗?我该如何做到最好?谢谢
我以为我试图做一些非常简单的事情.我只想在屏幕上报告一个正在运行的号码,以便用户知道我正在执行的SQL存储过程正在运行,并且他们没有耐心并开始点击按钮.
问题是我无法弄清楚如何实际调用ExecutNonQueryAsync命令的进度报告器.它停留在我的报告循环中并且从不执行命令但是,如果我把它放在async命令之后,它将被执行并且结果永远不会等于零.
任何想法,评论,想法将不胜感激.非常感谢!
int i = 0;
lblProcessing.Text = "Transactions " + i.ToString();
int result = 0;
while (result==0)
{
i++;
if (i % 500 == 0)
{
lblProcessing.Text = "Transactions " + i.ToString();
lblProcessing.Refresh();
}
}
// Yes - I know - the code never gets here - that is the problem!
result = await cmd.ExecuteNonQueryAsync();
Run Code Online (Sandbox Code Playgroud)