检查之后发现, 只有UpdateBtn_Click方法完全结束之后设置才会生效
时间: 2023-07-31 19:06:24 浏览: 152
根据你的描述,可能是因为UI线程被UpdateProductionStatus()方法阻塞了,导致LoadingGrid元素无法在ShowLoadingAnimation()方法中及时显示出来。为了解决这个问题,可以将UpdateProductionStatus()方法的执行异步化,让它在新的线程中执行。具体做法可以使用C#的async和await关键字,将UpdateProductionStatus()方法的代码放在一个Task.Run()方法中,例如:
```
public async void UpdateProductionStatus()
{
string[] PONumbers = PONumbersStr.Split(new char[] { ',' });
foreach (string PONumber in PONumbers)
{
await Task.Run(() => _commandRepo.UpdateProdStatus(PONumber.Replace(" ", ""), _siteID));
}
IsEnabled = true;
}
```
这样做可以让UpdateProductionStatus()方法在新的线程中执行,不会阻塞UI线程,从而让LoadingGrid元素能够在ShowLoadingAnimation()方法中及时显示出来。
阅读全文