请教大家一个问题:
在C#里编程用datagridview显示数据的时候,当显示好了数据在A窗口里再用另外一个B窗口挡住A窗口,然后移开B窗口的时候,A窗口的datagridview显示的数据会重新一行行很慢的刷出来,请问大家知道这是怎么回事吗?急求这个问题的解决办法,谢谢!!

解决方案 »

  1.   

    它本来是被挡住的,再次显示时肯定是在重绘啊,结论就是:
    1:你显示的数据太复杂,重绘很吃力;
    2:你机子的内存太少;
    3:一个DATAGRIDVIEW的可见行应该只有几十行,你可能把行高设置的太小,重绘的的工作量太大。办法就是没有办法,不让他绘制就是没显示咯。
      

  2.   

    在工作的方法上调整一下,少显示一些数据,要么就 GRID 表做大些一次多显示数据。
      

  3.   


               //双缓冲防止闪烁
                SetStyle(ControlStyles.DoubleBuffer | ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true);
                UpdateStyles();
    用双缓存处理下你的datagridview就不会有那个问题了