BackgroundWorker worker = new BackgroundWorker();
worker.DoWork += (m, s) =>
{
Application.Current.Dispatcher.Invoke(() => Bilgi()); //1-
Application.Current.Dispatcher.Invoke(() => Amortisman(); //2-
};
worker.RunWorkerAsync();
比尔吉(); = 是动画,
Amortisman() = 是一个计算,它检查文本框并在文本框中打印计算值。
我想做的是 Amortisman() 我应该把它放在某个地方,以便在显示 Bilgi() 动画时,Amortisman() 也会被执行,进行计算并将其打印到文本框。动画效果很好。 我浏览了数百页,但没有找到适合自己的BackgroundWorker。 我找不到它,每个人都使用进度条,我想做的是运行动画。 请帮忙
我对我的英语感到抱歉
如果您想在后台同时运行动画 (Bilgi()) 和计算 (Amortisman()),同时确保计算在进行时更新 UI,您可以使用 Task 和 async/await 的组合的BackgroundWorker。具体方法如下:
Task.Run(async () =>
{
await Task.Delay(1000); // Simulate some initial delay
await Application.Current.Dispatcher.InvokeAsync(() => Bilgi()); // Run the animation on the UI thread
// Run the calculation in the background
await Task.Run(() =>
{
Application.Current.Dispatcher.Invoke(() => Amortisman());
});
});