'宣言 Public Enum ComparisonOperatorFlags Inherits System.Enum
public enum ComparisonOperatorFlags : System.Enum
メンバ | 解説 |
---|---|
All | すべての演算子。 |
Bottom | ComparisonOperatorBottom に対応します。 |
BottomPercentile | ComparisonOperatorBottomPercentile に対応します。 |
Contains | ComparisonOperatorContains に対応します。 |
DoesNotContain | ComparisonOperatorDoesNotContain に対応します。 |
DoesNotEndWith | ComparisonOperatorDoesNotEndWith に対応します。 |
DoesNotMatch | ComparisonOperatorDoesNotMatch に対応します。 |
DoesNotStartWith | ComparisonOperatorDoesNotStartWith に対応します。 |
EndsWith | ComparisonOperatorEndsWith に対応します。 |
Equals | ComparisonOperatorEquals に対応します。 |
GreaterThan | ComparisonOperatorGreaterThan に対応します。 |
GreaterThanOrEqualsTo | ComparisonOperatorGreaterThanOrEqualTo に対応します。 |
In | ComparisonOperatorIn に相対します。 |
LessThan | ComparisonOperatorLessThan に対応します。 |
LessThanOrEqualsTo | ComparisonOperatorLessThanOrEqualTo に対応します。 |
Like | ComparisonOperatorLike に対応します。 |
Match | ComparisonOperatorMatch に対応します。 |
None | なし。 |
NotEquals | ComparisonOperatorNotEquals に対応します。 |
NotIn | ComparisonOperatorNotIn に相対します。 |
NotLike | ComparisonOperatorNotLike に対応します。 |
StartsWith | ComparisonOperatorStartsWith に対応します。 |
Top | ComparisonOperatorTop に対応します。 |
TopPercentile | ComparisonOperatorTopPercentile に対応します。 |
ComparisonOperatorFlags は、フラグが付いていない ComparisonOperator 列挙型の値をミラーする値でフラグが付けられた列挙型です。これは、データ プレゼンターの FieldSettings の FilterOperatorDropDownItems などのプロパティを指定するのに使用されます。
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; } } }