WebHierarchicalDataGrid™ の Outlook GroupBy 機能によってエンドユーザーはより多くの読みやすくまたナビゲート可能な表示にデータをグループ化できます。この機能は、データをグループ化するためにエンドユーザーが列をドラッグできるセクションをコントロールの上または下に表示します。
列がグループ化されたら、コントロールは ContainerGrid オブジェクトを使用してグループ化されたデータを描画します。WebHierarchicalDataGrid は、通常の GridRecord オブジェクトの代わりに GroupedRecord オブジェクトを表示して、Groupby 領域に列ヘッダーを表示します。GroupedRecord オブジェクトは、デフォルトでグループ内の項目の値および数を表示し、展開してその中にネストされた GridRecord オブジェクトを表示することができます。
IBand インターフェイスを実装する WebHierarchicalDataGrid 内の各オブジェクトには、Groupby 機能固有のプロパティを設定するために使用できるタイプ GroupingSettings の GroupingSettings プロパティが含まれています。GroupingSettings オブジェクトにはデータの各バンドのグループ化メカニズムの方法を制御するために設定できる EnableColumnGrouping プロパティが含まれます。
EnableColumnGrouping は以下の DefaultableBoolean 列挙値を取得します。
True – GroupBy は IBand と任意の子 IBand オブジェクトに有効です。
False – GroupBy は IBand と任意の子 IBand オブジェクトに無効です。
NotSet – GroupBy は親オブジェクトの設定に基づいて有効または無効になります。
ルート バンド(WebHierarchicalDataGrid)の GroupingSettings オブジェクトの EnableColumnGrouping プロパティはデフォルトで False で、ルートとすべての子バンドに対してグループ化を無効にします。それぞれ個々のレベルを手動で制御したい場合、各バンドの EnableColumnGrouping を個々に設定します。
WebHierarchicalDataGrid は、GroupingSettings オブジェクトを通して GroupAreaVisibility プロパティも公開します。このプロパティはコントロールの GroupBy 領域を表示または非表示にします。これはデフォルトで表示されます。
注: すべてのバンドが EnableColumnGrouping プロパティを False に設定されている場合、グループ化領域は非表示です。
GroupingSettings プロパティには、グループ化された列の個々のオプションを設定することを可能にする、ColumnGroupingSetting オブジェクトを追加するために使用できるタイプ ColumnGroupingSettings の ColumnSettings プロパティも含まれています。
たとえば、ColumnGroupingSetting オブジェクトを使用することによって、特定の列だけにグループ化を有効にして、並べ替えの方向を設定するだけでなく列の削除ボタンを表示できます。
WebHierarchicalDataGrid は GroupedColumns コレクションにグループ化された列を保存します。列のグループ化を解除するには、グループ化領域から列ヘッダーをドラッグして、列ヘッダーで削除ボタンをクリックするか、GroupedColumns コレクションから列を削除します。
WebHierarchicalDataGrid で Outlook GroupBy 機能を有効にすると、エンドユーザーは列をグループ化してデータを整理して表示することができます。コントロールで IBand インターフェイスを実装する各オブジェクトは、 GroupingSettings プロパティを公開します。このプロパティを使用して、 EnableColumnGrouping プロパティを True に設定することによって、Outlook GroupBy を有効にすることができます。 GroupAreaVisibility プロパティを Visibility.Visible に設定することによって GroupBy 領域を表示できます。
GroupByAreaLocation プロパティを使用して、コントロールの上または下に GroupBy 領域を表示できます。これはデフォルトでコントロールの上側に、グループ化のためにエンドユーザーが列をドラッグするための場所を提供します。
以下のコードは、GroupBy を有効にして GroupBy 領域を表示する方法を示します。
HTML の場合:
<GroupingSettings EnableColumnGrouping="True" GroupAreaVisibility="Visible" GroupByAreaLocation="Top"/>
Visual Basic の場合:
Me.WebHierarchicalDataGrid1.GroupingSettings.EnableColumnGrouping = DefaultableBoolean.True Me.WebHierarchicalDataGrid1.GroupingSettings.GroupAreaVisibility = Visibility.Visible Me.WebHierarchicalDataGrid1.GroupingSettings.GroupByAreaLocation = GroupByAreaLocation.Top
C# の場合:
this.WebHierarchicalDataGrid1.GroupingSettings.EnableColumnGrouping = DefaultableBoolean.True; this.WebHierarchicalDataGrid1.GroupingSettings.GroupAreaVisibility = Visibility.Visible; this.WebHierarchicalDataGrid1.GroupingSettings.GroupByAreaLocation = GroupByAreaLocation.Top;