internal void AddColumn (ColumnHeader newCol, int index, bool redraw)
{
int column_count = Columns.Count;
newCol.SetListView (this);
int [] display_indices = new int [column_count];
for (int i = 0; i < column_count; i++) {
ColumnHeader col = Columns [i];
if (i == index) {
display_indices [i] = index;
} else {
int display_index = col.InternalDisplayIndex;
if (display_index < index) {
display_indices [i] = display_index;
} else {
display_indices [i] = (display_index + 1);
}
}
}
ReorderColumns (display_indices, redraw);
Invalidate ();
}