We use a RadGridView on our WinForms application. We are trying to add filtering, but nothing behaves the way we want it to.
When I go to the filter -> Available Filters -> Equals, I would expect it to load the form with the appropriate options prefilled (i.e., equal to today). However, the form lacks values and does not adapt for which filter I select.
Here's my code so far:
This is subscribed to in the MouseUp event of any of the Available Filter menu items (which has some custom values passed in through a lambda):
When I go to the filter -> Available Filters -> Equals, I would expect it to load the form with the appropriate options prefilled (i.e., equal to today). However, the form lacks values and does not adapt for which filter I select.
Here's my code so far:
Private Sub radGridView1_CreateCompositeFilterDialog(e As GridViewCreateCompositeFilterDialogEventArgs, senderName As String, column As GridViewDataColumn) Dim filterDialog As CompositeFilterForm Dim compositeFilterDescriptor As CompositeFilterDescriptor If senderName.ToLower() = "equals" Then compositeFilterDescriptor = New CompositeFilterDescriptor() compositeFilterDescriptor.LogicalOperator = FilterLogicalOperator.Or compositeFilterDescriptor.IsFilterEditor = True compositeFilterDescriptor.FilterDescriptors.Add(New DateFilterDescriptor("colReceived", FilterOperator.IsEqualTo, Date.Now) With { .IsFilterEditor = True, .IgnoreTimePart = True }) compositeFilterDescriptor.FilterDescriptors.Add(New DateFilterDescriptor("colReceived", FilterOperator.IsEqualTo, Date.Now) With { .IsFilterEditor = True, .IgnoreTimePart = True }) ElseIf senderName.ToLower() = "not equal to" Then compositeFilterDescriptor = New CompositeFilterDescriptor() compositeFilterDescriptor.LogicalOperator = FilterLogicalOperator.And compositeFilterDescriptor.NotOperator = True compositeFilterDescriptor.IsFilterEditor = True compositeFilterDescriptor.FilterDescriptors.Add(New FilterDescriptor("colReceived", FilterOperator.IsEqualTo, Date.Now)) compositeFilterDescriptor.FilterDescriptors.Add(New FilterDescriptor("colReceived", FilterOperator.None, Nothing)) ElseIf .... End If If compositeFilterDescriptor IsNot Nothing Then filterDialog = New CompositeFilterForm(column, compositeFilterDescriptor) Else filterDialog = New CompositeFilterForm() End If AddHandler filterDialog.FormClosing, AddressOf test2 e.Dialog = filterDialogEnd SubThis is subscribed to in the MouseUp event of any of the Available Filter menu items (which has some custom values passed in through a lambda):
Private Sub item_MouseUp(sender As Object, column As GridViewDataColumn) AddHandler radGridView1.CreateCompositeFilterDialog, Sub(s As Object, e2 As GridViewCreateCompositeFilterDialogEventArgs) radGridView1_CreateCompositeFilterDialog(e2, CType(sender, RadItem).AccessibleName, column) End Sub End SubHow can I load the window with the appropriate filters prefilled to the form?
It looks like we're on Telerik version 2017.3.1017.
