I have a data bound column on a float field. Some of the float values are null in the database. When I filter on the column when all values are not null, the filter works fine. When I filter on the column with null values included, I get an exception in Telerik code, "Nullable object must have a value." Here is the call stack when the exception is thrown:
:
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableExtensions.Count(System.Linq.IQueryable source) Line 399 + 0x18b bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.GetPagingDeterminativeItemCount() Line 413 + 0x86 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.PagingDeterminativeItemCount.get() Line 405 + 0x14 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.GetEffectiveItemCount() Line 388 + 0xa bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.UpdateItemCount() Line 381 + 0x1e bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnInternalListCreated() Line 783 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.EnsureInternalList() Line 643 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.InternalList.get() Line 632 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.InternalCount.get() Line 319 + 0x17 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.IsEmpty.get() Line 277 + 0x14 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.IsEmpty.get() Line 355 + 0x21 bytes C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemCollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 690 + 0x66 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 636 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionViewCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 615 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 1050 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 33 + 0x69 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 875 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOverride() Line 1022 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshInternal() Line 970 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer() Line 965 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.InvalidatePagingAndRefresh() Line 438 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnFilterDescriptorsCollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 473 C#
[External Code]
Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 149 + 0xf bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableItemCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 93 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.InsertItem(int index, Telerik.Windows.Data.IFilterDescriptor item) Line 196 C#
[External Code]
Telerik.Windows.Data.dll!Telerik.Windows.Data.CollectionHelper.Insert(System.Collections.IList target, System.Collections.IEnumerable newItems, int startingIndex, System.Collections.IEqualityComparer itemComparer) Line 334 + 0x44 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableCollectionManager.HandleCollectionChanged(System.Collections.IList sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 106 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableCollectionManager.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 87 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 33 + 0x69 bytes C#
[External Code]
Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 149 + 0xf bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableItemCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 93 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.InsertItem(int index, Telerik.Windows.Data.IFilterDescriptor item) Line 196 C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilteringViewModel.OnPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) Line 551 + 0x3b bytes C#
Telerik.Windows.Controls.dll!Telerik.Windows.Controls.ViewModelBase.OnPropertyChanged(string propertyName) Line 58 C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilteringViewModel.ApplyFilters() Line 459 C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilteringViewModel.OnFieldFilterPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) Line 386 C#
Telerik.Windows.Controls.dll!Telerik.Windows.Controls.ViewModelBase.OnPropertyChanged(string propertyName) Line 58 C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilterDescriptorViewModel.Value.set(object value) Line 103 C#
[External Code]
Telerik.Windows.Controls.Input.dll!Telerik.Windows.Controls.RadMaskedTextBox.Value.set(object value) Line 376 C#
Telerik.Windows.Controls.Input.dll!Telerik.Windows.Controls.RadMaskedTextBox.UpdateValueFromHandler() Line 1444 C#
Telerik.Windows.Controls.Input.dll!Telerik.Windows.Controls.RadMaskedTextBox.TextBox_LostFocus() Line 877 + 0xd bytes C#
Telerik.Windows.Controls.Input.dll!Telerik.Windows.Controls.MaskedTextBox.ExtendedTextBox.OnLostFocus(System.Windows.RoutedEventArgs e) Line 53 C#
[External Code]
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.GetPagingDeterminativeItemCount() Line 413 + 0x86 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.PagingDeterminativeItemCount.get() Line 405 + 0x14 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.GetEffectiveItemCount() Line 388 + 0xa bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.UpdateItemCount() Line 381 + 0x1e bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnInternalListCreated() Line 783 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.EnsureInternalList() Line 643 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.InternalList.get() Line 632 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.InternalCount.get() Line 319 + 0x17 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.IsEmpty.get() Line 277 + 0x14 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.IsEmpty.get() Line 355 + 0x21 bytes C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemCollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 690 + 0x66 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 636 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionViewCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 615 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 1050 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 33 + 0x69 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 875 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOverride() Line 1022 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshInternal() Line 970 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer() Line 965 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.InvalidatePagingAndRefresh() Line 438 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnFilterDescriptorsCollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 473 C#
[External Code]
Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 149 + 0xf bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableItemCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 93 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.InsertItem(int index, Telerik.Windows.Data.IFilterDescriptor item) Line 196 C#
[External Code]
Telerik.Windows.Data.dll!Telerik.Windows.Data.CollectionHelper.Insert(System.Collections.IList target, System.Collections.IEnumerable newItems, int startingIndex, System.Collections.IEqualityComparer itemComparer) Line 334 + 0x44 bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableCollectionManager.HandleCollectionChanged(System.Collections.IList sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 106 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableCollectionManager.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 87 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs args) Line 33 + 0x69 bytes C#
[External Code]
Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 149 + 0xf bytes C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.ObservableItemCollection<Telerik.Windows.Data.IFilterDescriptor>.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e) Line 93 C#
Telerik.Windows.Data.dll!Telerik.Windows.Data.RadObservableCollection<Telerik.Windows.Data.IFilterDescriptor>.InsertItem(int index, Telerik.Windows.Data.IFilterDescriptor item) Line 196 C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilteringViewModel.OnPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) Line 551 + 0x3b bytes C#
Telerik.Windows.Controls.dll!Telerik.Windows.Controls.ViewModelBase.OnPropertyChanged(string propertyName) Line 58 C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilteringViewModel.ApplyFilters() Line 459 C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilteringViewModel.OnFieldFilterPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) Line 386 C#
Telerik.Windows.Controls.dll!Telerik.Windows.Controls.ViewModelBase.OnPropertyChanged(string propertyName) Line 58 C#
Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.FilterDescriptorViewModel.Value.set(object value) Line 103 C#
[External Code]
Telerik.Windows.Controls.Input.dll!Telerik.Windows.Controls.RadMaskedTextBox.Value.set(object value) Line 376 C#
Telerik.Windows.Controls.Input.dll!Telerik.Windows.Controls.RadMaskedTextBox.UpdateValueFromHandler() Line 1444 C#
Telerik.Windows.Controls.Input.dll!Telerik.Windows.Controls.RadMaskedTextBox.TextBox_LostFocus() Line 877 + 0xd bytes C#
Telerik.Windows.Controls.Input.dll!Telerik.Windows.Controls.MaskedTextBox.ExtendedTextBox.OnLostFocus(System.Windows.RoutedEventArgs e) Line 53 C#
[External Code]