'宣言 Public Property GroupByMode As GroupByMode
public GroupByMode GroupByMode {get; set;}
このプロパティの型は GroupByMode です。使用可能なすべての設定がすべての列で意味を成すわけではありません。たとえば、日付と時刻に関連する設定は、DataType が System.DateTime の列のみで使用する必要があります。このプロパティを列の DataType にとって意味を成さない値に設定すると、可能な場合ダミーのデフォルト値に基づいてグループ化が行われます。
行のグループ化機能を有効にするには、Layout の UltraGridLayout.ViewStyleBand プロパティを OutlookGroupBy に設定します。こうするとグリッドの最上部にグループボックスが表示され、ユーザーはそこに行をグループ化する基準となる列をドラッグ&ドロップできるようになります。列による行のグループ化をコードで実行するには、列を UltraGridBand.SortedColumns コレクションに追加し、Add メソッドの groupBy パラメーターを True に指定します。
Private Sub SetupGrid() ' If the user groups by the Orders column then the groupings should be built like they are when ' a DateTime column is grouped in Microsoft Outlook 2003. ' Me.ultraGrid1.DisplayLayout.Bands("Orders").Columns("DateReceived").GroupByMode = GroupByMode.OutlookDate ' If the user groups by the LastName column then the groupings should be based on only the first letter ' of the customer's last name. ' Me.ultraGrid1.DisplayLayout.Bands("Customers").Columns("LastName").GroupByMode = GroupByMode.FirstCharacter ' The LastName column should not use case sensitive comparisons when sorting/grouping. ' Me.ultraGrid1.DisplayLayout.Bands("Customers").Columns("LastName").SortComparisonType = SortComparisonType.CaseInsensitive ' The rest of the text columns should use case-sensitive sorts. This is the default behavior. ' Me.ultraGrid1.DisplayLayout.Override.SortComparisonType = SortComparisonType.CaseSensitive End Sub
private void SetupGrid() { // If the user groups by the Orders column then the groupings should be built like they are when // a DateTime column is grouped in Microsoft Outlook 2003. // this.ultraGrid1.DisplayLayout.Bands["Orders"].Columns["DateReceived"].GroupByMode = GroupByMode.OutlookDate; // If the user groups by the LastName column then the groupings should be based on only the first letter // of the customer's last name. // this.ultraGrid1.DisplayLayout.Bands["Customers"].Columns["LastName"].GroupByMode = GroupByMode.FirstCharacter; // The LastName column should not use case sensitive comparisons when sorting/grouping. // this.ultraGrid1.DisplayLayout.Bands["Customers"].Columns["LastName"].SortComparisonType = SortComparisonType.CaseInsensitive; // The rest of the text columns should use case-sensitive sorts. This is the default behavior. // this.ultraGrid1.DisplayLayout.Override.SortComparisonType = SortComparisonType.CaseSensitive; }