private void DoSorting(bool withMulti) { Table table = this.table; // The Table control on a form - already initialised table.Clear(); table.BeginUpdate(); table.EnableWordWrap = true; // If false, then Cell.WordWrap is ignored NumberColumn col0 = new NumberColumn("#", 20); NumberColumn col1 = new NumberColumn("Height", 50); TextColumn col2 = new TextColumn("Name", 80); TextColumn col3 = new TextColumn("Surname", 80); DateTimeColumn col4 = new DateTimeColumn("Birthday", 120); TextColumn col5 = new TextColumn("Comments", 100); table.ColumnModel = new ColumnModel(new Column[] { col0, col1, col2, col3, col4, col5 }); if (withMulti) { // Surname, Name, Height (descending) SortColumnCollection sort = new SortColumnCollection(); sort.Add(new SortColumn(3, SortOrder.Ascending)); // Surname sort.Add(new SortColumn(2, SortOrder.Ascending)); // Name sort.Add(new SortColumn(1, SortOrder.Descending)); // Height table.ColumnModel.SecondarySortOrders = sort; } TableModel model = new TableModel(); AddSortingRow(model, 1, 1.52, "Mark", "Hobbs", "23/1/1978", "likes apples"); AddSortingRow(model, 2, 1.76, "Dave", "Duke", "2/5/1977", "keeps fish"); AddSortingRow(model, 3, 1.64, "Holly", "Prench", "14/8/1979", "singer"); AddSortingRow(model, 4, 1.53, "Mark", "Hobbs", "23/1/1984", "plays football"); AddSortingRow(model, 5, 1.64, "Dave", "Hobbs", "19/1/1980", "vegetarian"); this.table.TableModel = model; this.table.EndUpdate(); }