private void SetConfig(ListViewExConfig config)
        {
            for (int i = 0; i < PART_gridView.Columns.Count; i++)
            {
                foreach (ColumnConfig item in config.Columns)
                {
                    if (i == item.Index)
                    {
                        ListViewExColumn column = (ListViewExColumn)PART_gridView.Columns[i];

                        if (item.Visible == true)
                        {
                            column.SaveWidth = item.Width;
                            column.Visible   = true;
                            column.Width     = item.Width;
                        }
                        else
                        {
                            column.SaveWidth = item.Width;
                            column.Visible   = false;
                        }
                    } // end if (найдена текущая колонка
                }     // end foreach (перебор конфигурации колонок)
            }         // end foreach (перебор текущих колонок)
        }
        private ListViewExConfig GetConfig()
        {
            ListViewExConfig config = new ListViewExConfig();

            for (int i = 0; i < PART_gridView.Columns.Count; i++)
            {
                ListViewExColumn column = (ListViewExColumn)PART_gridView.Columns[i];
                ColumnConfig     item   = new ColumnConfig();

                item.Index = i;
                item.Name  = (String)column.Header;

                if (column.Visible == true)
                {
                    item.Visible = true;
                    item.Width   = column.ActualWidth;
                }
                else
                {
                    item.Visible = false;
                    item.Width   = column.SaveWidth;
                }

                config.Columns.Add(item);
            }

            return(config);
        }