我有一个winforms应用程序,我可以在2家公司(数据库)之间进行选择,并访问他们的文章/项目以阻止或解除阻止它们。我通过SAP B1 SDK来完成。该功能起作用,它按预期完成一切。这个“问题”是用户不喜欢它的速度有多快(用户,我说的对吗?),他们让我慢一点,并添加一些视觉功能(进度条,锁定/解锁图片,附加标签)会知道哪篇文章被阻止/解除封锁。放慢功能
这是我锁定/功能解锁文章:
private void items()
{
string[] lines = textBox1.Lines;
for (int i = 0; i <= lines.GetUpperBound(0); i++)
{
oItem = ((SAPbobsCOM.Items)(oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oItems)));
oItem.GetByKey(lines[i]);
if (comboBox1.Text == "Lock")
{
oItem.Frozen = BoYesNoEnum.tYES;
}
else if (comboBox1.Text == "Unlock")
{
oItem.Frozen = BoYesNoEnum.tNO;
}
lRetCode = oItem.Update();
if (lRetCode != 0)
{
oCompany.GetLastError(out lErrCode, out sErrMsg);
MessageBox.Show(lErrCode + " " + sErrMsg + " item: " + lines[i]);
}
}
}
怎么可能是实现这一目标的最好的和正确的方式?我尝试使用Thread.Sleep
,但经过多次失败尝试后,我无法找到插入代码行的位置,我在尝试之前,中间和之后尝试过,但没有成功。任何想法/建议将不胜感激。
你是什么意思时,你说你有没有和Thread.sleep代码()方法没有成功? – Han
嗯,我很确定它会工作,但我尝试在函数的不同部分插入方法,它所做的只是等待,然后操作在相同的原始时间完成,所以它基本上只是在完成所有操作之前暂停操作。 @ Handoko.Chen –