Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinGrid
Private Sub UltraGrid1_InitializeLayout(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles UltraGrid1.InitializeLayout
e.Layout.Override.AllowRowFiltering = DefaultableBoolean.True
End Sub
Private Sub UltraGrid1_BeforeRowFilterDropDown(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.BeforeRowFilterDropDownEventArgs) Handles UltraGrid1.BeforeRowFilterDropDown
' You can modify the ValueList in the event args. Following for loop removes
' Custom and Blanks items from the value list.
Dim i As Integer
For i = e.ValueList.ValueListItems.Count - 1 To 0 Step -1
' Remove Custom option from the filter drop down.
If e.ValueList.ValueListItems(i).DisplayText.Equals("(Custom)") Then
e.ValueList.ValueListItems.RemoveAt(i)
End If
' Remove Blanks option from the filter drop down.
If e.ValueList.ValueListItems(i).DisplayText.Equals("(Blanks)") Then
e.ValueList.ValueListItems.RemoveAt(i)
End If
Next
If GetType(String) Is e.Column.DataType Then
Dim condition As FilterCondition
' You can add items with custom criteria as well by using FilterCondition object
' as the DataValue of the value list item.
condition = New FilterCondition(e.Column, FilterComparisionOperator.Match, "^[A-Ha-h]")
e.ValueList.ValueListItems.Insert(0, condition, "A to H")
condition = New FilterCondition(e.Column, FilterComparisionOperator.Match, "^[I-Pi-p]")
e.ValueList.ValueListItems.Insert(1, condition, "I to P")
condition = New FilterCondition(e.Column, FilterComparisionOperator.Match, "^[Q-Zq-z]")
e.ValueList.ValueListItems.Insert(2, condition, "Q to Z")
End If
If GetType(Integer) Is e.Column.DataType Then
Dim conditions As ColumnFilter
' You can also add items with custom criteria by using ColumnFilter object
' as the DataValue of the value list item.
conditions = New ColumnFilter(e.Column, FilterLogicalOperator.And)
conditions.FilterConditions.Add(FilterComparisionOperator.LessThan, 50)
e.ValueList.ValueListItems.Insert(0, conditions, "49 and below")
conditions = New ColumnFilter(e.Column, FilterLogicalOperator.And)
conditions.FilterConditions.Add(FilterComparisionOperator.GreaterThanOrEqualTo, 50)
conditions.FilterConditions.Add(FilterComparisionOperator.LessThan, 100)
e.ValueList.ValueListItems.Insert(0, conditions, "50 to 99")
conditions = New ColumnFilter(e.Column, FilterLogicalOperator.And)
conditions.FilterConditions.Add(FilterComparisionOperator.GreaterThanOrEqualTo, 100)
e.ValueList.ValueListItems.Insert(0, conditions, "100 and above")
End If
End Sub