我用backgroundImage属性 引用一个相对路径来给窗体设置的 背景,我知道这样做效率很低,因为窗体在切换的时候会一闪一闪的,可是我是个菜鸟,很菜的菜鸟,用什么样的方法才能避免闪烁的问题呢?我查了一些资料,有说重绘啊 双缓冲什么的,但是该怎么做呀?哪位好心的大侠,能给个DEMO啊,感激不尽中!!![email protected]

解决方案 »

  1.   


    有趣、how to do ?
      

  2.   

      this.DoubleBuffered = true;//设置本窗体
                SetStyle(ControlStyles.UserPaint, true);
                SetStyle(ControlStyles.AllPaintingInWmPaint, true); // 禁止擦除背景.
                SetStyle(ControlStyles.DoubleBuffer, true); // 双缓冲
                //SetStyle(ControlStyles.DoubleBuffer | ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true);
                //UpdateStyles();
      

  3.   


    //设置窗体Style
    this.SetStyle(ControlStyles.UserPaint, true);
    this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
    this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
    this.UpdateStyles();