Back to Devexpress

How to: Expand and Maximize a Specific Detail

windowsforms-3056-controls-and-libraries-data-grid-examples-master-detail-how-to-expand-and-maximize-a-specific-detail.md

latest2.0 KB
Original Source

How to: Expand and Maximize a Specific Detail

  • Nov 13, 2018
  • 2 minutes to read

The example below shows how to maximize a detail View.

If the detail View does not exist, we should create it by expanding a specific master row. In our case, we obtain and work with the detail corresponding to the first master row.

After the master row is expanded, the detail View is obtained via GridView.GetDetailView.

Then the detail is maximized using the BaseView.ZoomView method. After that, the detail object and the GridControl.DefaultView property refer to the same maximized detail.

We use GridControl.DefaultView to group detail data rows by the “FUNCTION” column.

csharp
int rowHandle = 0;
    //Create the first detail by expanding a master row
    GridView gView = gridControl1.MainView as GridView;
    gView.SetMasterRowExpanded(rowHandle, true);
    //Get the first detail
    BaseView detail = gView.GetDetailView(rowHandle);
    if (detail != null) {
        detail.ZoomView();
        //Access the detail via DefaultView
        //Group by the FUNCTION column
        (gridControl1.DefaultView as GridView).Columns["FUNCTION"].GroupIndex = 0;
    }
vb
Dim rowHandle As Integer = 0
    'Create the first detail by expanding a master row
    Dim gView As GridView = CType(GridControl1.MainView, GridView)
    gView.SetMasterRowExpanded(rowHandle, True)
    'Get the first detail
    Dim detail As BaseView = gView.GetDetailView(rowHandle)
    If Not detail Is Nothing Then
        detail.ZoomView()
        'Access the detail via DefaultView
        'Group by the FUNCTION column
        CType(GridControl1.DefaultView, GridView).Columns("FUNCTION").GroupIndex = 0
    End If