Note: Field's that have a DataType that implements the System.Collections.IEnumerable interface are expandable by default. However, any Field can be made expandable by setting its IsExpandable property to true. Expandable fields have associated ExpandableFieldRecords and ExpandableFieldRecordPresenters to represent them in the UI. When one of these is expanded its nested content will contain either a RecordListControl if its value implements the IEnumerable interface and is not a string. All other data types including string will display an ExpandedCellPresenter.
Note: If the IsExpandable property is left to its default setting of null then this will return true for Fields or whose DataType implements IEnumerable. All other data types will return false by default. However, if this is a derived, i.e. editor specific field, e.g. a TemplateField, ComboBoxField, MaskedTextField etc., then this property will return false unless IsExpandable is not null.
The following code snippet shows how to check the resolved state of IsExpandable.
In C#:
In VB.NET:
private void xamDataGrid_FieldLayoutInitialized(object sender, Infragistics.Windows.DataPresenter.Events.FieldLayoutInitializedEventArgs e) { foreach (Field f in e.FieldLayout.Fields) { if (f.IsExpandableResolved) { f.Visibility = System.Windows.Visibility.Collapsed; } } }
Private Sub xamDataGrid_FieldLayoutInitialized(ByVal sender As Object, ByVal e As Infragistics.Windows.DataPresenter.Events.FieldLayoutInitializedEventArgs) For Each f As Field In e.FieldLayout.Fields If f.IsExpandableResolved Then f.Visibility = System.Windows.Visibility.Collapsed End If Next End Sub
Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2