This is a migrated thread and some comments may be shown as answers.

RadGridView crashes when I filter a column with integers

9 Answers 157 Views
GridView
This is a migrated thread and some comments may be shown as answers.
Hadrien
Top achievements
Rank 1
Hadrien asked on 28 Oct 2013, 09:12 AM
Hi,

I have a RadGridView with many column and in all of them I can filter data using the popup window (see attached gridview.png). In one of the columns, which has integers as data source, when I tick one of the available options it works fine, but when I use the filter "equals to" and I set a number my program crashes (see error.png). It's curious because I noticed that if I first select one of the others filters first ('is greater tham', 'is not equal to', ...) and them select the 'is equals to' it works!

Do you know what can be the problem?

9 Answers, 1 is accepted

Sort by
0
Yoan
Telerik team
answered on 31 Oct 2013, 11:55 AM
Hi Hadrien,

I've tried to reproduce the problem you report, but to no avail. I have attached my test project for a reference.

Regards,
Yoan
Telerik
TRY TELERIK'S NEWEST PRODUCT - EQATEC APPLICATION ANALYTICS for WPF.
Learn what features your users use (or don't use) in your application. Know your audience. Target it better. Develop wisely.
Sign up for Free application insights >>
0
Robert
Top achievements
Rank 1
answered on 20 May 2016, 09:16 AM
I'd just mention that I experience this too (I didn't check your work-around though).
0
Robert
Top achievements
Rank 1
answered on 20 May 2016, 09:38 AM

The error is not reproducible in the example provided by Yoan.  However, I was able to get a stacktrace using my own application (of course I will try and recreate this by modifying the example provided by Yoan)

 

 Telerik.Windows.Data.dll!Telerik.Windows.Data.Expressions.FilterOperatorExpressionBuilderBase.GenerateContains(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.Expressions.FilterOperatorExpressionBuilderBase.CreateExpression(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.Expressions.OperatorValueFilterDescriptorExpressionBuilderBase.CreateBodyExpression()Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.FilterDescriptor.CreateFilterExpression(System.Linq.Expressions.ParameterExpression parameterExpression)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.FilterDescriptorBase.CreateFilterExpression(System.Linq.Expressions.Expression instance)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.Expressions.FilterDescriptorCollectionExpressionBuilder.CreateBodyExpression()Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.CompositeFilterDescriptor.CreateFilterExpression(System.Linq.Expressions.ParameterExpression parameterExpression)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.FilterDescriptorBase.CreateFilterExpression(System.Linq.Expressions.Expression instance)Unknown
 Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FieldFilterDescriptor.Telerik.Windows.Data.IFilterDescriptor.CreateFilterExpression(System.Linq.Expressions.Expression instance)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.Expressions.FilterDescriptorCollectionExpressionBuilder.CreateBodyExpression()Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.CompositeFilterDescriptor.CreateFilterExpression(System.Linq.Expressions.ParameterExpression parameterExpression)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.FilterDescriptorBase.CreateFilterExpression(System.Linq.Expressions.Expression instance)Unknown
 Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.ColumnFilterDescriptor.CreateFilterExpression(System.Linq.Expressions.Expression instance)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.Expressions.FilterDescriptorCollectionExpressionBuilder.CreateBodyExpression()Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.CompositeFilterDescriptor.CreateFilterExpression(System.Linq.Expressions.ParameterExpression parameterExpression)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.FilterDescriptorBase.CreateFilterExpression(System.Linq.Expressions.Expression instance)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.CompositeFilterDescriptorCollection.CreateFilterExpression(System.Linq.Expressions.Expression instance)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnFilterDescriptorsChanged()Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnFilterDescriptorsCollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)Unknown
 System.dll!System.Collections.ObjectModel.ObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<System.__Canon>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableItemCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e)Unknown
 System.dll!System.Collections.ObjectModel.ObservableCollection<System.__Canon>.InsertItem(int index, System.__Canon item)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<System.__Canon>.InsertItem(int index, System.__Canon item)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.FilterDescriptorCollection.InsertItem(int index, Telerik.Windows.Data.IFilterDescriptor item)Unknown
 mscorlib.dll!System.Collections.ObjectModel.Collection<Telerik.Windows.Data.IFilterDescriptor>.Insert(int index, Telerik.Windows.Data.IFilterDescriptor item)Unknown
 mscorlib.dll!System.Collections.ObjectModel.Collection<Telerik.Windows.Data.IFilterDescriptor>.System.Collections.IList.Insert(int index, object value)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.CollectionHelper.Insert(System.Collections.IList target, System.Collections.IEnumerable newItems, int startingIndex, System.Collections.IEqualityComparer itemComparer)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableCollectionManager.HandleCollectionChanged(System.Collections.IList sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableCollectionManager.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args)Unknown
 System.dll!System.Collections.ObjectModel.ObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<System.__Canon>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableItemCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e)Unknown
 System.dll!System.Collections.ObjectModel.ObservableCollection<System.__Canon>.InsertItem(int index, System.__Canon item)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<System.__Canon>.InsertItem(int index, System.__Canon item)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.FilterDescriptorCollection.InsertItem(int index, Telerik.Windows.Data.IFilterDescriptor item)Unknown
 mscorlib.dll!System.Collections.ObjectModel.Collection<Telerik.Windows.Data.IFilterDescriptor>.Add(Telerik.Windows.Data.IFilterDescriptor item)Unknown
 Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridViewColumn.OnColumnFilterDescriptorPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.DescriptorBase.OnPropertyChanged(System.ComponentModel.PropertyChangedEventArgs args)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.DescriptorBase.OnPropertyChanged(string propertyName)Unknown
 Telerik.Windows.Data.dll!Telerik.Windows.Data.DescriptorBase.ResumeNotifications()Unknown
 Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilteringViewModel.ApplyFilters()Unknown
 Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilteringViewModel.OnFieldFilterPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)Unknown
 Telerik.Windows.Controls.dll!Telerik.Windows.Controls.ViewModelBase.OnPropertyChanged(string propertyName)Unknown
 Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilterDescriptorViewModel.Value.set(object value)Unknown
 [Native to Managed Transition]
 [Managed to Native Transition]
 PresentationFramework.dll!MS.Internal.Data.PropertyPathWorker.SetValue(object item, object value)Unknown
 PresentationFramework.dll!MS.Internal.Data.ClrBindingWorker.UpdateValue(object value)Unknown
 PresentationFramework.dll!System.Windows.Data.BindingExpression.UpdateSource(object value)Unknown
 PresentationFramework.dll!System.Windows.Data.BindingExpressionBase.UpdateValue()Unknown
 PresentationFramework.dll!System.Windows.Data.BindingExpression.UpdateOverride()Unknown
 PresentationFramework.dll!System.Windows.Data.BindingExpressionBase.Update()Unknown
 PresentationFramework.dll!System.Windows.Data.BindingExpression.OnLostFocus(object sender, System.Windows.RoutedEventArgs e)Unknown
 WindowsBase.dll!System.Windows.WeakEventManager.ListenerList<System.Windows.RoutedEventArgs>.DeliverEvent(object sender, System.EventArgs e, System.Type managerType)Unknown
 WindowsBase.dll!System.Windows.WeakEventManager.DeliverEvent(object sender, System.EventArgs args)Unknown
 PresentationFramework.dll!System.Windows.LostFocusEventManager.OnLostFocus(object sender, System.Windows.RoutedEventArgs args)Unknown
 PresentationCore.dll!System.Windows.RoutedEventHandlerInfo.InvokeHandler(object target, System.Windows.RoutedEventArgs routedEventArgs)Unknown
 PresentationCore.dll!System.Windows.EventRoute.InvokeHandlersImpl(object source, System.Windows.RoutedEventArgs args, bool reRaised)Unknown
 PresentationCore.dll!System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args)Unknown
 PresentationCore.dll!System.Windows.UIElement.RaiseEvent(System.Windows.RoutedEventArgs e)Unknown
 PresentationFramework.dll!System.Windows.Controls.Primitives.TextBoxBase.OnLostFocus(System.Windows.RoutedEventArgs e)Unknown
 PresentationCore.dll!System.Windows.UIElement.IsFocused_Changed(System.Windows.DependencyObject d, System.Windows.DependencyPropertyChangedEventArgs e)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.OnPropertyChanged(System.Windows.DependencyPropertyChangedEventArgs e)Unknown
 PresentationFramework.dll!System.Windows.FrameworkElement.OnPropertyChanged(System.Windows.DependencyPropertyChangedEventArgs e)Unknown
 PresentationFramework.dll!System.Windows.Controls.TextBox.OnPropertyChanged(System.Windows.DependencyPropertyChangedEventArgs e)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.NotifyPropertyChange(System.Windows.DependencyPropertyChangedEventArgs args)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.UpdateEffectiveValue(System.Windows.EntryIndex entryIndex, System.Windows.DependencyProperty dp, System.Windows.PropertyMetadata metadata, System.Windows.EffectiveValueEntry oldEntry, ref System.Windows.EffectiveValueEntry newEntry, bool coerceWithDeferredReference, bool coerceWithCurrentValue, System.Windows.OperationType operationType)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.ClearValueCommon(System.Windows.EntryIndex entryIndex, System.Windows.DependencyProperty dp, System.Windows.PropertyMetadata metadata)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.ClearValue(System.Windows.DependencyPropertyKey key)Unknown
 PresentationCore.dll!System.Windows.Input.FocusManager.OnFocusedElementChanged(System.Windows.DependencyObject d, System.Windows.DependencyPropertyChangedEventArgs e)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.OnPropertyChanged(System.Windows.DependencyPropertyChangedEventArgs e)Unknown
 PresentationFramework.dll!System.Windows.FrameworkElement.OnPropertyChanged(System.Windows.DependencyPropertyChangedEventArgs e)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.NotifyPropertyChange(System.Windows.DependencyPropertyChangedEventArgs args)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.UpdateEffectiveValue(System.Windows.EntryIndex entryIndex, System.Windows.DependencyProperty dp, System.Windows.PropertyMetadata metadata, System.Windows.EffectiveValueEntry oldEntry, ref System.Windows.EffectiveValueEntry newEntry, bool coerceWithDeferredReference, bool coerceWithCurrentValue, System.Windows.OperationType operationType)Unknown
 WindowsBase.dll!System.Windows.DependencyObject.SetValueCommon(System.Windows.DependencyProperty dp, object value, System.Windows.PropertyMetadata metadata, bool coerceWithDeferredReference, bool coerceWithCurrentValue, System.Windows.OperationType operationType, bool isInternal)Unknown
 PresentationCore.dll!System.Windows.Input.FocusManager.SetFocusedElement(System.Windows.DependencyObject element, System.Windows.IInputElement value)Unknown
 PresentationFramework.dll!System.Windows.Input.KeyboardNavigation.UpdateFocusedElement(System.Windows.DependencyObject focusTarget)Unknown
 PresentationFramework.dll!System.Windows.FrameworkElement.OnGotKeyboardFocus(object sender, System.Windows.Input.KeyboardFocusChangedEventArgs e)Unknown
 PresentationCore.dll!System.Windows.Input.KeyboardFocusChangedEventArgs.InvokeEventHandler(System.Delegate genericHandler, object genericTarget)Unknown
 PresentationCore.dll!System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate handler, object target)Unknown
 PresentationCore.dll!System.Windows.RoutedEventHandlerInfo.InvokeHandler(object target, System.Windows.RoutedEventArgs routedEventArgs)Unknown
 PresentationCore.dll!System.Windows.EventRoute.InvokeHandlersImpl(object source, System.Windows.RoutedEventArgs args, bool reRaised)Unknown
 PresentationCore.dll!System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args)Unknown
 PresentationCore.dll!System.Windows.UIElement.RaiseTrustedEvent(System.Windows.RoutedEventArgs args)Unknown
 PresentationCore.dll!System.Windows.UIElement.RaiseEvent(System.Windows.RoutedEventArgs args, bool trusted)Unknown
 PresentationCore.dll!System.Windows.Input.InputManager.ProcessStagingArea()Unknown
 PresentationCore.dll!System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs input)Unknown
 PresentationCore.dll!System.Windows.Input.KeyboardDevice.ChangeFocus(System.Windows.DependencyObject focus, int timestamp)Unknown
 PresentationCore.dll!System.Windows.Input.KeyboardDevice.TryChangeFocus(System.Windows.DependencyObject newFocus, System.Windows.Input.IKeyboardInputProvider keyboardInputProvider, bool askOld, bool askNew, bool forceToNullIfFailed)Unknown
 PresentationCore.dll!System.Windows.Input.KeyboardDevice.Focus(System.Windows.DependencyObject focus, bool askOld, bool askNew, bool forceToNullIfFailed)Unknown
 PresentationCore.dll!System.Windows.Input.KeyboardDevice.Focus(System.Windows.IInputElement element)Unknown
 PresentationCore.dll!System.Windows.UIElement.Focus()Unknown
 PresentationFramework.dll!System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonDown(System.Windows.Input.MouseButtonEventArgs e)Unknown
 PresentationCore.dll!System.Windows.UIElement.OnMouseLeftButtonDownThunk(object sender, System.Windows.Input.MouseButtonEventArgs e)Unknown
 PresentationCore.dll!System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(System.Delegate genericHandler, object genericTarget)Unknown
 PresentationCore.dll!System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate handler, object target)Unknown
 PresentationCore.dll!System.Windows.RoutedEventHandlerInfo.InvokeHandler(object target, System.Windows.RoutedEventArgs routedEventArgs)Unknown
 PresentationCore.dll!System.Windows.EventRoute.InvokeHandlersImpl(object source, System.Windows.RoutedEventArgs args, bool reRaised)Unknown
 PresentationCore.dll!System.Windows.UIElement.ReRaiseEventAs(System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args, System.Windows.RoutedEvent newEvent)Unknown
 PresentationCore.dll!System.Windows.UIElement.OnMouseDownThunk(object sender, System.Windows.Input.MouseButtonEventArgs e)Unknown
 PresentationCore.dll!System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(System.Delegate genericHandler, object genericTarget)Unknown
 PresentationCore.dll!System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate handler, object target)Unknown
 PresentationCore.dll!System.Windows.RoutedEventHandlerInfo.InvokeHandler(object target, System.Windows.RoutedEventArgs routedEventArgs)Unknown
 PresentationCore.dll!System.Windows.EventRoute.InvokeHandlersImpl(object source, System.Windows.RoutedEventArgs args, bool reRaised)Unknown
 PresentationCore.dll!System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args)Unknown
 PresentationCore.dll!System.Windows.UIElement.RaiseTrustedEvent(System.Windows.RoutedEventArgs args)Unknown
 PresentationCore.dll!System.Windows.UIElement.RaiseEvent(System.Windows.RoutedEventArgs args, bool trusted)Unknown
 PresentationCore.dll!System.Windows.Input.InputManager.ProcessStagingArea()Unknown
 PresentationCore.dll!System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs input)Unknown
 PresentationCore.dll!System.Windows.Input.InputProviderSite.ReportInput(System.Windows.Input.InputReport inputReport)Unknown
 PresentationCore.dll!System.Windows.Interop.HwndMouseInputProvider.ReportInput(System.IntPtr hwnd, System.Windows.Input.InputMode mode, int timestamp, System.Windows.Input.RawMouseActions actions, int x, int y, int wheel)Unknown
 PresentationCore.dll!System.Windows.Interop.HwndMouseInputProvider.FilterMessage(System.IntPtr hwnd, MS.Internal.Interop.WindowMessage msg, System.IntPtr wParam, System.IntPtr lParam, ref bool handled)Unknown
 PresentationCore.dll!System.Windows.Interop.HwndSource.InputFilterMessage(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam, ref bool handled)Unknown
 WindowsBase.dll!MS.Win32.HwndWrapper.WndProc(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam, ref bool handled)Unknown
 WindowsBase.dll!MS.Win32.HwndSubclass.DispatcherCallbackOperation(object o)Unknown
 WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate callback, object args, int numArgs)Unknown
 WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.TryCatchWhen(object source, System.Delegate callback, object args, int numArgs, System.Delegate catchHandler)Unknown
 WindowsBase.dll!System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority priority, System.TimeSpan timeout, System.Delegate method, object args, int numArgs)Unknown
 WindowsBase.dll!MS.Win32.HwndSubclass.SubclassWndProc(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam)Unknown
 [Native to Managed Transition]
 [Managed to Native Transition]
 WindowsBase.dll!System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame frame)Unknown
 WindowsBase.dll!System.Windows.Threading.Dispatcher.PushFrame(System.Windows.Threading.DispatcherFrame frame)Unknown
 PresentationFramework.dll!System.Windows.Window.ShowHelper(object booleanBox)Unknown
 PresentationFramework.dll!System.Windows.Window.Show()Unknown
 PresentationFramework.dll!System.Windows.Window.ShowDialog()Unknown
>Office2.exe!Core.App.OnStartup(System.Windows.StartupEventArgs e) Line 73C#
 PresentationFramework.dll!System.Windows.Application..ctor.AnonymousMethod__1_0(object unused)Unknown
 WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate callback, object args, int numArgs)Unknown
 WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.TryCatchWhen(object source, System.Delegate callback, object args, int numArgs, System.Delegate catchHandler)Unknown
 WindowsBase.dll!System.Windows.Threading.DispatcherOperation.InvokeImpl()Unknown
 WindowsBase.dll!System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(object state)Unknown
 WindowsBase.dll!MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(object obj)Unknown
 mscorlib.dll!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)Unknown
 mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)Unknown
 mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state)Unknown
 WindowsBase.dll!MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext executionContext, System.Threading.ContextCallback callback, object state)Unknown
 WindowsBase.dll!System.Windows.Threading.DispatcherOperation.Invoke()Unknown
 WindowsBase.dll!System.Windows.Threading.Dispatcher.ProcessQueue()Unknown
 WindowsBase.dll!System.Windows.Threading.Dispatcher.WndProcHook(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam, ref bool handled)Unknown
 WindowsBase.dll!MS.Win32.HwndWrapper.WndProc(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam, ref bool handled)Unknown
 WindowsBase.dll!MS.Win32.HwndSubclass.DispatcherCallbackOperation(object o)Unknown
 WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate callback, object args, int numArgs)Unknown
 WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.TryCatchWhen(object source, System.Delegate callback, object args, int numArgs, System.Delegate catchHandler)Unknown
 WindowsBase.dll!System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority priority, System.TimeSpan timeout, System.Delegate method, object args, int numArgs)Unknown
 WindowsBase.dll!MS.Win32.HwndSubclass.SubclassWndProc(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam)Unknown
 [Native to Managed Transition]
 [Managed to Native Transition]
 WindowsBase.dll!System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame frame)Unknown
 WindowsBase.dll!System.Windows.Threading.Dispatcher.PushFrame(System.Windows.Threading.DispatcherFrame frame)Unknown
 PresentationFramework.dll!System.Windows.Application.RunDispatcher(object ignore)Unknown
 PresentationFramework.dll!System.Windows.Application.RunInternal(System.Windows.Window window)Unknown
 PresentationFramework.dll!System.Windows.Application.Run(System.Windows.Window window)Unknown
 PresentationFramework.dll!System.Windows.Application.Run()Unknown
 Office2.exe!Core.App.Main()C#
 [Native to Managed Transition]
 [Managed to Native Transition]
 mscorlib.dll!System.AppDomain.ExecuteAssembly(string assemblyFile, System.Security.Policy.Evidence assemblySecurity, string[] args)Unknown
 Microsoft.VisualStudio.HostingProcess.Utilities.dll!Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()Unknown
 mscorlib.dll!System.Threading.ThreadHelper.ThreadStart_Context(object state)Unknown
 mscorlib.dll!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)Unknown
 mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)Unknown
 mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state)Unknown
 mscorlib.dll!System.Threading.ThreadHelper.ThreadStart()Unknown

0
Stefan
Telerik team
answered on 24 May 2016, 01:06 PM
Hi Robert,

Such error is not reproducible on our end. Can you please try reproducing it with the sample application provided by my colleague? If you manage to do so, you can open a new support ticket and attach it there. We will be happy to help.

All the best,
Stefan X1
Telerik
Do you need help with upgrading your AJAX, WPF or WinForms project? Check the Telerik API Analyzer and share your thoughts.
0
Robert
Top achievements
Rank 1
answered on 24 May 2016, 01:36 PM

To quote my previous post

[quote]Robert said:

The error is not reproducible in the example provided by Yoan.

[/quote]

I think this might be a race condition during initialization.  My data set is big enough to cover a couple of screens.  The data is loaded into an ObservableCollection using EntityFramework 6.  Here I suspect properties might be initialized from a background thread which could cause problems if you are not using normal Bindings (which marshall some property changes to the UI thread) but have your own INotifyPropertyChanged.PropertyChanged event handlers.  Do you guard against events from other threads in your event handlers?  If not, that might be a good idea so that the source of such errors becomes easier to find.  Library vendors like you should use design-by-contract (in some form), so that your users can code more and debug less.

 

On a side note, I am not too happy with EntityFramework modifying properties from background threads, it has no reasons to do that at all; but I know it does anyway.

0
Ivan Ivanov
Telerik team
answered on 27 May 2016, 02:51 PM
Hello Robert,

I reviewed the code that is behind the stack trace that you mentioned. This really looks like a possible race condition. However, looking through the logic that must be responsible for this behavior, I don't seem to find when an unnoticed propertychanged occurrence can break it. Generally, the filtering data engine initialized an implementation of FilterOperatorExpressionBuilderBase in accordance to the column type. Then the same descriptor is used to chose the operator part of the filtering logic. However, in the described scenario, it seem that the wrong factory gets picked. Its type does not implement the mentioned method (Contains is supporterd only for string and IEnumerable<T>) and the exception is thrown. I must be missing something.
Can you please shed some more light on the scenario, so that I can be more precise, while trying to reproduce it. I guess that exception is thrown when the filter is applied and the filtered type is string? Are there any items in RadGridView at the time when the filtering popup is opened? Can you please try fixing the column's data type to string to check whether the issue is still reproducible.

Regards,
Ivan Ivanov
Telerik
Do you need help with upgrading your AJAX, WPF or WinForms project? Check the Telerik API Analyzer and share your thoughts.
0
Robert
Top achievements
Rank 1
answered on 30 May 2016, 08:19 AM

Hi Ivan,

How is the column type resolved?  

I use a GridViewDataColumn and have taken no measures to disclose the source type.  The source type is in one of the cases a "long?" and another is "int?".  As the source type suggest some of these might sometimes be null.

The ItemsSource is in one of my applications of RadGridView a CollectionViewSource with the Filter event handler is permanently set.  Perhaps it confuses the filtering in RadGridView that the ItemsSource is itself a CollectionViewSource?

But really, I have no clue, because I don't have the Telerik source code.

What kind of races do you believe you have found so far?

0
Ivan Ivanov
Telerik team
answered on 02 Jun 2016, 08:04 AM
Hello,

Would it be piossible for you to hadcode the DataType property of GridViewDataColumn to int? and check whether the issue is reproducible? I believe that this can guide us into the right direction. The stack trace shows that the failing filtering operation is "Contain", which should be available only for the string and IEnumerable<T> types, so thisis quite unusual.

Regards,
Ivan Ivanov
Telerik
Do you need help with upgrading your AJAX, WPF or WinForms project? Check the Telerik API Analyzer and share your thoughts.
0
Franciele
Top achievements
Rank 1
answered on 09 May 2019, 08:09 PM

Hello,

 

I Have a RagGridView being populate by a Dictionary with strings and Objects. When I want to use the filter tab on my program the option "greater than " "less than" don't show to me. I don't know if this can be do by a dictionary or others. Somebody could help me ? Please?

Tags
GridView
Asked by
Hadrien
Top achievements
Rank 1
Answers by
Yoan
Telerik team
Robert
Top achievements
Rank 1
Stefan
Telerik team
Ivan Ivanov
Telerik team
Franciele
Top achievements
Rank 1
Share this question
or