'Declaration Public Property FilterOperatorDropDownItems As Nullable(Of ComparisonOperatorFlags)
public Nullable<ComparisonOperatorFlags> FilterOperatorDropDownItems {get; set;}
FilterOperatorDropDownItems property controls which operators are displayed in the operator drop-down list in the filter cell. To hide the operator UI, set the FilterDropDownItems to None.
FilterOperatorDefaultValue property specifies the default or the initial filter operator value. The user can then change the operator to a different operator via the operator drop-down.
Note that you need to enable the filter record functionality by setting the FilterUIType property to FilterRecord and AllowRecordFiltering to True. This property controls the list of available operators in the filter cell of the filter record. When FilterUIType is set to LabelIcons, this property has no effect as the filter record and cells are not displayed.
Imports Infragistics.Windows Imports Infragistics.Windows.Controls Imports Infragistics.Windows.Editors Imports Infragistics.Windows.DataPresenter Imports Infragistics.Windows.DataPresenter.Events Private Sub Dp_FieldLayoutInitialized(ByVal sender As Object, ByVal e As FieldLayoutInitializedEventArgs) ' Enable the filter-record. e.FieldLayout.FieldSettings.AllowRecordFiltering = True ' FilterStringComparisonType controls whether to perform case-sensitive or ' case-insensitive string comparisons for filtering purposes. e.FieldLayout.FieldSettings.FilterStringComparisonType = FieldSortComparisonType.CaseInsensitive ' The following for loop sets FilterOperatorDefaultValue, FilterOperatorDropDownItems ' and FilterOperandUIType properties on each field based on the field's data type. Dim field As Field For Each field In e.FieldLayout.Fields Dim dataType As Type = field.DataType If dataType Is GetType(String) Then ' For string fields, pre-select StartsWith operator. field.Settings.FilterOperatorDefaultValue = ComparisonOperator.StartsWith ' For operator drop-down, limit the available options to the following. field.Settings.FilterOperatorDropDownItems = ComparisonOperatorFlags.Equals _ Or ComparisonOperatorFlags.StartsWith _ Or ComparisonOperatorFlags.Contains _ Or ComparisonOperatorFlags.Like ' For the operand input, use a text-box. e.FieldLayout.FieldSettings.FilterOperandUIType = FilterOperandUIType.TextBox ElseIf Utilities.IsNumericType(dataType) OrElse dataType Is GetType(DateTime) Then ' For numeric and date fields, pre-select Equals operator. field.Settings.FilterOperatorDefaultValue = ComparisonOperator.Equals ' For operator drop-down, limit the available options to the following. field.Settings.FilterOperatorDropDownItems = ComparisonOperatorFlags.Equals _ Or ComparisonOperatorFlags.LessThan _ Or ComparisonOperatorFlags.LessThanOrEqualsTo _ Or ComparisonOperatorFlags.GreaterThan _ Or ComparisonOperatorFlags.GreaterThanOrEqualsTo ' For the operand input, use the same editor as rest of the cells in the field ' are using. By default numeric field cells use numeric editor and date field ' cells use date-time editor. e.FieldLayout.FieldSettings.FilterOperandUIType = FilterOperandUIType.UseFieldEditor ElseIf dataType Is GetType(Boolean) Then ' For boolean fields, set the default operator to Equals. field.Settings.FilterOperatorDefaultValue = ComparisonOperator.Equals ' Also just allow Equals operator. This will effectively hide the operator ' drop-down. field.Settings.FilterOperatorDropDownItems = ComparisonOperatorFlags.Equals ' For the operand input, use drop-down list. field.Settings.FilterOperandUIType = FilterOperandUIType.DropDownList End If Next End Sub
using Infragistics.Windows; using Infragistics.Windows.Controls; using Infragistics.Windows.Editors; using Infragistics.Windows.DataPresenter; using Infragistics.Windows.DataPresenter.Events; private void dp_FieldLayoutInitialized( object sender, FieldLayoutInitializedEventArgs e ) { // Enable the filter-record. e.FieldLayout.FieldSettings.AllowRecordFiltering = true; // FilterStringComparisonType controls whether to perform case-sensitive or // case-insensitive string comparisons for filtering purposes. e.FieldLayout.FieldSettings.FilterStringComparisonType = FieldSortComparisonType.CaseInsensitive; // The following for loop sets FilterOperatorDefaultValue, FilterOperatorDropDownItems // and FilterOperandUIType properties on each field based on the field's data type. foreach ( Field field in e.FieldLayout.Fields ) { Type dataType = field.DataType; if ( typeof( string ) == dataType ) { // For string fields, pre-select StartsWith operator. field.Settings.FilterOperatorDefaultValue = ComparisonOperator.StartsWith; // For operator drop-down, limit the available options to the following. field.Settings.FilterOperatorDropDownItems = ComparisonOperatorFlags.Equals | ComparisonOperatorFlags.StartsWith | ComparisonOperatorFlags.Contains | ComparisonOperatorFlags.Like; // For the operand input, use a text-box. e.FieldLayout.FieldSettings.FilterOperandUIType = FilterOperandUIType.TextBox; } else if ( Utilities.IsNumericType( dataType ) || typeof( DateTime ) == dataType ) { // For numeric and date fields, pre-select Equals operator. field.Settings.FilterOperatorDefaultValue = ComparisonOperator.Equals; // For operator drop-down, limit the available options to the following. field.Settings.FilterOperatorDropDownItems = ComparisonOperatorFlags.Equals | ComparisonOperatorFlags.LessThan | ComparisonOperatorFlags.LessThanOrEqualsTo | ComparisonOperatorFlags.GreaterThan | ComparisonOperatorFlags.GreaterThanOrEqualsTo; // For the operand input, use the same editor as rest of the cells in the field // are using. By default numeric field cells use numeric editor and date field // cells use date-time editor. e.FieldLayout.FieldSettings.FilterOperandUIType = FilterOperandUIType.UseFieldEditor; } else if ( typeof( bool ) == dataType ) { // For boolean fields, set the default operator to Equals. field.Settings.FilterOperatorDefaultValue = ComparisonOperator.Equals; // Also just allow Equals operator. This will effectively hide the operator // drop-down. field.Settings.FilterOperatorDropDownItems = ComparisonOperatorFlags.Equals; // For the operand input, use drop-down list. field.Settings.FilterOperandUIType = FilterOperandUIType.DropDownList; } } }
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