Скажем, у нас есть UltraGrid. Как я могу отсортировать это программно сначала по столбцу A, затем B, затем C.
Спасибо!
Документация здесь: http://help.infragistics.com/Help/Doc/WinForms/2011.2/CLR2.0/html/Infragistics2.Win.UltraWinGrid.v11.2~Infragistics.Win.UltraWinGrid.UltraGridBand~SortedColumns.html
Вы можете просто установить индикатор сортировки (порядок важен), код взят из ссылки выше :
UltraGridBand band = this.ultraGrid1.DisplayLayout.Bands[0]; // Sort the rows by Country and City fields. Notice the order in which these columns // are set. We want to sort by Country and then sort by City and in order to do that // we have to set the SortIndicator property in the right order. band.Columns["Country"].SortIndicator = SortIndicator.Ascending; band.Columns["City"].SortIndicator = SortIndicator.Ascending; // You can also sort (as well as group rows by) columns by using SortedColumns // property off the band. band.SortedColumns.Add( "ContactName", false, false );
Более подробную информацию о втором методе можно найти здесь: http://help.infragistics.com/Help/NetAdvantage/NET/2008.2/CLR2.0/html/Infragistics2.Win.UltraWinGrid.v8.2~Infragistics.Win.UltraWinGrid.SortedColumnsCollection~Add.html
Если вы также хотите автоматически группировать по ContactName, это может сделать это для вас:
band.SortedColumns.Add( "ContactName", false, true);
Обратите внимание на использование true в качестве последнего параметра