Если вы пишете приложение WinForms, вы можете использовать DataTable для хранения данных и DataGridView для их отображения. Просто создайте таблицу данных:
dataTable = new DataTable();
Создайте нужные вам столбцы программно:
var columnSpec = new DataColumn();
columSpec.DataType = typeof(decimal); // If it holds a decimal
columSpec.ColumnName = "Interest Rate";
dataTable.Columns.Add(columnSpec);
Добавьте DataGridView в форму, используя конструктор, но не делайте этого, и после создания таблицы свяжите ее с сеткой, используя:
dataGridView.DataSource = dataTable;
Вы можете установить свойства сетки в представлении конструктора.
Я сделал это в случае только для чтения, когда DataTable заполняется из программы и просто отображает ее. Все, что пользователь может сделать, это изменить размер, изменить порядок или установить видимость столбцов. Чтобы добавить новые строки, вам нужно подключиться к событию RowsAdded