GridView for ASP.NET Web Forms
実行時の Grouping プロパティの設定
C1GridView の動作 > グルーピング > 実行時の Grouping プロパティの設定

Grouping プロパティは、実行時に設定することもできます。この機能を使うと、ユーザーの選択に基づいてグルーピングを設定できるため、柔軟性が増大します。

たとえば、以下のコードは、ユーザーによる選択が可能な4つのモードの1つで同じデータを表示するようグリッドを設定します(完全なサンプルは製品パッケージに付属しています)。

Visual Basic コードの書き方

Visual Basic
コードのコピー
Private Sub _rblView_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
    ' グループ化/マージを設定します。
    Dim col As C1.Web.Wijmo.Controls.C1GridView.C1Field = C1GridView1.Columns(0)
    Select Case _rblView.SelectedItem.Text
    ' 従来のモード:グループ化またはマージしません
        Case "Traditional"
            col.Visible = True
            col.RowMerge = C1.Web.Wijmo.Controls.C1GridView.RowMerge.None
            col.GroupInfo.Position = C1.Web.Wijmo.Controls.C1GridView.GroupPosition.None
    ' マージする:グルー化せず、同じ値は列にマージします。
        Case "Merged"
            col.Visible = True
            col.RowMerge = C1.Web.Wijmo.Controls.C1GridView.RowMerge.None
            col.GroupInfo.Position = C1.Web.Wijmo.Controls.C1GridView.GroupPosition.None
    ' グループ化する:縮小可能なヘッダーでグループ化し、グループ化した値をマージします。
        Case "Grouped"
            col.Visible = True
            col.RowMerge = C1.Web.Wijmo.Controls.C1GridView.RowMerge.None
            col.GroupInfo.Position = C1.Web.Wijmo.Controls.C1GridView.GroupPosition.Header
    ' 概要:縮小可能なヘッダーでグループ化し、グループ化した値を非表示にします。
        Case "Summary"
            col.Visible = False
            col.RowMerge = C1.Web.Wijmo.Controls.C1GridView.RowMerge.None
            col.GroupInfo.Position = C1.Web.Wijmo.Controls.C1GridView.GroupPosition.Header
    End Select
End Sub
                                                        

C# コードの書き方

C#
コードのコピー
private void _rblView_SelectedIndexChanged(object sender, System.EventArgs e)
{
// グルー化およびマージを設定します。
    C1.Web.Wijmo.Controls.C1GridView.C1Field col = C1GridView1.Columns[0];
    switch (_rblView.SelectedItem.Text)
    {
// 従来のモード:グループ化またはマージしません。
        case "Traditional":
            col.Visible = true;
            col.RowMerge = C1.Web.Wijmo.Controls.C1GridView.RowMerge.None;
            col.GroupInfo.Position = C1.Web.Wijmo.Controls.C1GridView.GroupPosition.None;
            break;
// マージする:グループ化せず、同じ値は列にマージします
        case "Merged":
            col.Visible = true;
            col.RowMerge = C1.Web.Wijmo.Controls.C1GridView.RowMerge.None;
            col.GroupInfo.Position = C1.Web.Wijmo.Controls.C1GridView.GroupPosition.None;
            break;
// グループ化する:縮小可能なヘッダーでグループ化し、グループ化した値をマージします。
        case "Grouped":
            col.Visible = true;
            col.RowMerge = C1.Web.Wijmo.Controls.C1GridView.RowMerge.None;
            col.GroupInfo.Position = C1.Web.Wijmo.Controls.C1GridView.GroupPosition.Header;
            break;
// 概要:縮小可能なヘッダーでグループ化し、グループ化した値を非表示にします。
        case "Summary":
            col.Visible = false;
            col.RowMerge = C1.Web.Wijmo.Controls.C1GridView.RowMerge.None;
            col.GroupInfo.Position = C1.Web.Wijmo.Controls.C1GridView.GroupPosition.Header;
            break;
    }
}
                                                                        
完全なサンプルについては、 ComponentOne HelpCentral Sample ページの Grouping サンプルを参照してください。
関連トピック