2017-03-04 87 views
0

我有一个GIF加载图标我尝试使用当我的窗体的登录按钮被按下时。我遇到的问题是,当单击登录按钮并且处理登录的方法正在运行时,GIF停止工作。我想用C#来做到这一点在Windows窗体中当其他方法正在运行时gif停止工作c#

我已经使用了一种类似于后台工作试过这一次是怎么做 https://www.codeproject.com/Articles/33885/Working-with-BackgroundWorker-Creating-Your-Own-Lo

,但它不会让我的代码从另一个线程访问代码任何帮助,将不胜感激

+1

你可能在运行同一个线程中UI上的登录功能,所以UI块。而不是在后台运行UI(使用backgroundworker动画gif)运行登录功能。 – null

回答

0

正如你可以在你的榜样链接查看:

public void Start() 
{ 
    Bw.RunWorkerAsync(); *// this is Async task* 
    newLoading = new LoadingForm(); 
    newLoading.ShowDialog(); 
} 

异步任务将在主线程separatly运行,因此它不会影响LO在主线程中运行的GIF的ading。

这里有一个答案类似话题:Animated GIF in Windows Form while executing long process

+0

谢谢我做了这个,但我遇到了问题,因为登录方法需要访问由主线程创建的控件。我也尝试使用新线程切换并打开面板,但使用相同的响应 – Scorpion

相关问题