我用DataAdapter.Update将真实的数据表更新为DataSet中的数据表,请问在更新的过程中怎么用progressbar显示更新的进度呢??
谢谢大家!帮个忙!!

解决方案 »

  1.   


    progressBar.Visible = true;  
    int count = ds.Tables["土种代码表"].Rows.Count; 
    progressBar.Minmum = 0; 
    progressBar.Maximum = count ;  
                progressBar.BackColor = Color.Green;  
                for (int i = 0; i   < count; i++) //循环ID  
                {  
                    int ID =Convert.ToInt32(ds.Tables["土种代码表"].Rows[i]["id"]);  
                    for (int j = 0; j   < kind.Length;j++)   
                    {  
                        if (kind[j] != null)   
                        {  
                            getCent(ID, kind[j], name);  
                        }  
                    }  
                    progressBar.Value++; 
                    //progressBar.Value=((i+1)*100 / ds.Tables["土种代码表"].Rows.Count);  
                }  
    或者 
    progressBar.Visible = true;  
    int count = ds.Tables["土种代码表"].Rows.Count; 
    progressBar.Minmum = 0; 
    progressBar.Maximum = 100;  
                progressBar.BackColor = Color.Green;  
                for (int i = 0; i   < count; i++) //循环ID  
                {  
                    int ID =Convert.ToInt32(ds.Tables["土种代码表"].Rows[i]["id"]);  
                    for (int j = 0; j   < kind.Length;j++)   
                    {  
                        if (kind[j] != null)   
                        {  
                            getCent(ID, kind[j], name);  
                        }  
                    }  
                    //progressBar.Value++; 
                    progressBar.Value=((i+1)*100 / count);  
                }  
      

  2.   

    progressbar 的用法:
    先设置progressbar的Maximum和Minimum和Value
    然后在循环语句中是Value++;楼主的Update没有循环,就不能用progressbar
      

  3.   

    C# code
    progressBar.Visible = true;  
    int count = ds.Tables["土种代码表"].Rows.Count; 
    progressBar.Minmum = 0; 
    progressBar.Maximum = count ;  
                progressBar.BackColor = Color.Green;  
                for (int i = 0; i   < count; i++) //循环ID  
                {  
                    int ID =Convert.ToInt32(ds.Tables["土种代码表"].Rows[i]["id"]);  
                    for (int j = 0; j   < kind.Length;j++)   
                    {  
                        if (kind[j] != null)   
                        {  
                            getCent(ID, kind[j], name);  
                        }  
                    }  
                    progressBar.Value++; 
                    //progressBar.Value=((i+1)*100 / ds.Tables["土种代码表"].Rows.Count);  
                }  
    或者 
    progressBar.Visible = true;  
    int count = ds.Tables["土种代码表"].Rows.Count; 
    progressBar.Minmum = 0; 
    progressBar.Maximum = 100;  
                progressBar.BackColor = Color.Green;  
                for (int i = 0; i   < count; i++) //循环ID  
                {  
                    int ID =Convert.ToInt32(ds.Tables["土种代码表"].Rows[i]["id"]);  
                    for (int j = 0; j   < kind.Length;j++)   
                    {  
                        if (kind[j] != null)   
                        {  
                            getCent(ID, kind[j], name);  
                        }  
                    }  
                    //progressBar.Value++; 
                    progressBar.Value=((i+1)*100 / count);  
                }  
    不是吧
    这是我写的项目代码!!
      

  4.   

    “先设置progressbar的Maximum和Minimum和Value 
    然后在循环语句中是Value++;
    然后在循环语句中是Value++;”
    这个我都知道,就是Update没有循环,不知道怎么实现啊