单元格大量计算,使用了while语句......单元格的数值不停的变化,刷新,直到满足条件了才停止如何直接得到最后的结果呀,不显示计算过程(数值变化过程)

解决方案 »

  1.   

    while循环中加上 Application.DoEvents()
      

  2.   

    你理解反了。你应该避免直接操作控件,而使用变量代替。
    比如你原来的程序是
    int x = 0;
    while (x < 10)
    {
        DataGrid1.Cells[1, 1].Text = (Convert.ToInt32(DataGrid1.Cells[1, 1].Text) + 1).ToString();
        x++;
    }这个代码会刷新10次控件。
    你应该这么写:
    int x = 0;
    int value = Convert.ToInt32(DataGrid1.Cells[1, 1].Text); // 操作前将控件属性传给一个变量
    while (x < 10)
    {
        value = value + 1; // 计算
    }
    DataGrid1.Cells[1, 1].Text = value.ToString(); // 将结果传回控件