Back to Devexpress

BaseRow.AllowCollapse Property

windowsforms-devexpress-dot-xtraverticalgrid-dot-rows-dot-baserow-0cfde642.md

latest5.8 KB
Original Source

BaseRow.AllowCollapse Property

Gets or sets whether users can click the header or collapse button to collapse the row.

Namespace : DevExpress.XtraVerticalGrid.Rows

Assembly : DevExpress.XtraVerticalGrid.v25.2.dll

NuGet Packages : DevExpress.Win.Navigation, DevExpress.Win.VerticalGrid

Declaration

csharp
[DefaultValue(DefaultBoolean.Default)]
[DXCategory("Behavior")]
[XtraSerializableProperty]
public DefaultBoolean AllowCollapse { get; set; }
vb
<DXCategory("Behavior")>
<DefaultValue(DefaultBoolean.Default)>
<XtraSerializableProperty>
Public Property AllowCollapse As DefaultBoolean

Property Value

TypeDefaultDescription
DefaultBooleanDefault

True if users can collapse the row; False if not; Default if this functionality depends on the control’s AllowCollapseRows option.

|

Available values:

NameDescriptionReturn Value
True

The value is true.

|

0

| | False |

The value is false.

|

1

| | Default |

The value is specified by a global option or a higher-level object.

|

2

|

Remarks

You can group rows into categories and display rows as children of other rows. See the following topic for more information on how to create categories and nested rows: Rows.

Users can click the collapse/expand button in a category or row, double-click a category or row header, or press the plus (+) or minus (-) sign on the numeric keypad to collapse or expand a category or row.

Disable the control’s AllowCollapseRows option to prohibit users from collapsing rows. You can also use a row’s AllowCollapse property to override this setting for an individual row.

Disable the control’s ShowCollapseButtons option to hide collapse/expand buttons. You can also use a row’s ShowCollapseButton property to hide the buttons in an individual row. If users are not allowed to collapse rows, the buttons are not displayed regardless of these settings.

The code below allows users to collapse all rows except a specific row.

csharp
using DevExpress.Utils;

vGridControl1.OptionsBehavior.AllowCollapseRows = true;
rowAddress.AllowCollapse = DefaultBoolean.False;

vGridControl1.OptionsView.ShowCollapseButtons = true;
rowAddress.ShowCollapseButton = DefaultBoolean.False;
vb
Imports DevExpress.Utils

vGridControl1.OptionsBehavior.AllowCollapseRows = True
rowAddress.AllowCollapse = DefaultBoolean.False

vGridControl1.OptionsView.ShowCollapseButtons = True
rowAddress.ShowCollapseButton = DefaultBoolean.False

The control raises the RowCollapsing, RowCollapsed, RowExpanding, and RowExpanded events before and after the corresponding operation. Use the Row event argument to determine the processed row. You can set the Cancel argument to true to discard an operation before it is completed.

The handler below prohibits users from collapsing a row if a specific record is focused.

csharp
private void vGridControl1_RowCollapsing(object sender, DevExpress.XtraVerticalGrid.Events.RowCollapsingEventArgs e) {
    VGridControl gridControl = sender as VGridControl;
    if (e.Row == rowAddress && gridControl.FocusedRecord == 0)
        e.Cancel = true;
}
vb
Private Sub vGridControl1_RowCollapsing(ByVal sender As Object, ByVal e As Events.RowCollapsingEventArgs)
    Dim gridControl As VGridControl = TryCast(sender, VGridControl)
    If e.Row Is rowAddress AndAlso gridControl.FocusedRecord = 0 Then e.Cancel = True
End Sub

See Also

Collapse and Expand Rows

BaseRow Class

BaseRow Members

DevExpress.XtraVerticalGrid.Rows Namespace