AtelierElieScripter.Lib.CustListView.BufferUpdate C# (CSharp) Method

BufferUpdate() public method

Updates current items and headers according to buffer and active columns
public BufferUpdate ( ) : void
return void
        public void BufferUpdate()
        {
            this.BeginUpdate();

            // Display active columns
            this.Columns.Clear();
            for (int i = 0; i < bufferActiveColumns.Count; i++)
            {
                if (bufferActiveColumns[i])
                    this.Columns.Add(bufferHeaderCollection[i]);
            }

            this.Items.Clear();
            foreach (ListViewItem item in bufferItemCollection)
            {
                List<ListViewItem.ListViewSubItem> subItemList = new List<ListViewItem.ListViewSubItem>();
                ListViewItem newitem = (ListViewItem)item.Clone();
                int j = 0;
                for (int i = 0; i < bufferActiveColumns.Count; i++)
                {
                    if (!bufferActiveColumns[i])
                    {
                        newitem.SubItems.RemoveAt(i-j);
                        j++;

                    }
                }
                newitem.BackColor = Color.Gainsboro;
                this.Items.Add(newitem);
            }
            this.EndUpdate();
        }