当数据从数组string[] ArrList ={ "1", "2", "3", "4", "5" };中加载到DataTable的时候显示进度条!求教高人
加载代码如下:
         DataTable dt = new DataTable();
            DataColumn dc1 = new DataColumn("facode", Type.GetType("System.Int16"));
            DataColumn dc2 = new DataColumn("favalue", Type.GetType("System.String"));
            dt.Columns.Add(dc1);
            dt.Columns.Add(dc2);            string[] ArrList ={ "1", "2", "3", "4", "5" };
            int _facode = 0;
            for (int i = 0; i < ArrList.Length; i++)
            {
                DataRow dr = dt.NewRow();
                _facode += 1;
                dr["facode"] = _facode;
                dr["favalue"] = ArrList[i].Trim();
                dt.Rows.Add(dr);
            }

解决方案 »

  1.   

    我只是举个数据量小的列子同志们!
    如何string[] ArrList ={ "1", "2", "3", "4", "5" };是很大数量级的时候不需要吗
      

  2.   

    progressBar1.Maximum = ArrList.Length;
                progressBar1.Step = 1;
                progressBar1.Value = 0;
                for (int i = 0; i < ArrList.Length; i++)
                {
                    DataRow dr = dt.NewRow();
                    _facode += 1;
                    dr["facode"] = _facode;
                    dr["favalue"] = ArrList[i].Trim();
                    dt.Rows.Add(dr);
    Application.DoEvents();
                    progressBar1.PerformStep();
                }
      

  3.   

    C#有进度条控件
    在for循环中设置进度条的百分比
      

  4.   

    //在读取大的数据表或ArrayList还是可以用的 
    //以下是测试代码
     public void ProgressTest()
            {
                ArrayList arr = new ArrayList();
                for (int i = 0; i < 1000000; i++)
                    arr.Add(i);
                for (int j = 0; j < arr.Count; j++)
                {
                    progressBar1.Minimum = 0;
                    progressBar1.Maximum = arr.Count;
                    progressBar1.Value = j;
                }
                label1.Text = "读取完成";
            }
            private void button1_Click(object sender, EventArgs e)
            {
                    ProgressTest();
            }