public int GetOrAllocateOrdinal(string name) { for (int i = 0; i < Columns.Count; ++i) { if (Columns[i].Name == name) { return(Columns[i].Ordinal); } } LogColumn lc = new LogColumn(); lc.Name = name; lc.Visible = Columns.Count < 20; lc.Width = 100; lc.Ordinal = Columns.Count; Columns.Add(lc); if (lc.Visible && TabPanel != null) { TabPanel.ReloadColumns(); } return(lc.Ordinal); }