程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 無閃爍的listview

無閃爍的listview

編輯:.NET實例教程
Q:http://topic.csdn.Net/u/20071205/15/116fa433-69bc-418d-a31c-3c279abc8007.Html

A:



public partial class Form1 : Form
    ...{
        
        class   DoubleBufferListView   :   ListVIEw 
        ...{ 
                public   DoubleBufferListVIEw() 
                ...{ 
                        SetStyle(ControlStyles.DoubleBuffer|ControlStyles.OptimizedDoubleBuffer |  ControlStyles.AllPaintingInWmPaint,   true); 
                        UpdateStyles(); 
                } 
        } 


        public Form1()
        ...{
            InitializeComponent();
        }

        DoubleBufferListView lv = new DoubleBufferListVIEw();
        private void Form1_Load(object sender, EventArgs e)
        ...{
           
            this.Controls.Add(lv);
            lv.Height = 300;
            lv.Width = 300;
            new System.Threading.Thread(new System.Threading.ParameterizedThreadStart(doAdd)).Start();
        }

         
        void doAdd(object obj)
        ...{
            if (this.InvokeRequired)
            ...{
           this.Invoke(new System.Action<object>(doAdd), new object[] ...{ obj });
            }
            else
            ...{
                for (int i = 0; i < 100; i++)
                ...{
                    this.lv.Items.Add(new ListVIEwItem("jinjazz" + this.lv.Items.Count.ToString()));
                    System.Threading.Thread.Sleep(10);
                    Application.DoEvents();
                }
            }
        }
    }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved