小编Dar*_*lex的帖子

显示在其他线程中加载数据期间加载动画

我有一个运行数据库的应用程序.当我在datagridview中加载表时,我的表单冻结了.如何在加载表期间确保平滑加载动画?

我为动画运行两个线程并将数据加载到表中,但动画仍然不能正常工作.

 private volatile bool threadRun;

 private void UpdateTab()
 {      
     // Create panel for animation
     Panel loadingPanel = new Panel();              
     // Label, where the text will change
     Label loadingLabel = new Label();
     loadingLabel.Text = "Loading";        

     loadingPanel.Controls.Add(loadingLabel);
     this.Controls.Add(loadingPanel);

     // thread loading animation
     threadRun = true;         

     Task.Factory.StartNew(() =>
     {
         int i = 0;
         string labelText;
         while (threadRun)
         {
             Thread.Sleep(500);
             switch (i)
             {
                 case 0:
                     labelText = "Loading.";
                     i = 1;
                     break;
                 case 1:
                     labelText = "Loading..";
                     i = 2;
                     break;
                 default:
                     labelText …
Run Code Online (Sandbox Code Playgroud)

.net c# multithreading datagridview winforms

4
推荐指数
1
解决办法
4885
查看次数

标签 统计

.net ×1

c# ×1

datagridview ×1

multithreading ×1

winforms ×1