Итак, у меня проблема с RadDataGrid Telerik для UWP.У меня есть команда, которая обновляет элемент в коллекции, который связан с RadDataGrid.Он устанавливает 3 свойства, с которыми у меня возникают проблемы - это свойство enum;Статус.Перечисление Status используется в паре DataTemplateSelectors и StyleSelectors.Для свойства Status столбец не определен.Когда он обновляется, генерируется исключение:
System.InvalidOperationException
HResult=0x80131509
Message=Failed to compare two elements in the array.
Source=System.Private.CoreLib
StackTrace:
at System.Collections.Generic.ArraySortHelper`1.BinarySearch(T[] array, Int32 index, Int32 length, T value, IComparer`1 comparer)
at System.Array.BinarySearch[T](T[] array, Int32 index, Int32 length, T value, IComparer`1 comparer)
at System.Collections.Generic.List`1.BinarySearch(Int32 index, Int32 count, T item, IComparer`1 comparer)
at Telerik.Data.Core.Group.IndexOf(Object item, IComparer`1 sortComparer)
at Telerik.Data.Core.Engine.ParallelDataEngine.Telerik.Data.Core.Engine.IDataEngine.GetFilteredItemIndex(Object item)
at Telerik.Data.Core.LocalDataSourceProvider.ProcessPropertyChanged(Object sender, PropertyChangedEventArgs e)
at Telerik.Data.Core.LocalDataSourceProvider.DataView_ItemPropertyChanged(Object sender, PropertyChangedEventArgs e)
at Telerik.Data.Core.EnumerableDataSourceView.HandlePropertyChanged(Object sender, PropertyChangedEventArgs e)
at Telerik.Data.Core.EnumerableDataSourceView.Telerik.Core.IWeakEventListener.ReceiveEvent(Object sender, Object args)
at Telerik.Core.WeakEventHandlerList`1.OnPropertyChanged(Object sender, PropertyChangedEventArgs e)
at System.ComponentModel.PropertyChangedEventHandler.Invoke(Object sender, PropertyChangedEventArgs e)
at GalaSoft.MvvmLight.ObservableObject.RaisePropertyChanged(String propertyName)
at GalaSoft.MvvmLight.ViewModelBase.RaisePropertyChanged[T](String propertyName, T oldValue, T newValue, Boolean broadcast)
at GalaSoft.MvvmLight.ViewModelBase.Set[T](T& field, T newValue, Boolean broadcast, String propertyName)
at MyLineItemViewModel.set_Status(Status value) in MyLineItemViewModel.cs:line 121
Inner Exception 1:
ArgumentException: Object must be of type String.
Я изменил тип данных свойства enum на string, но я все еще получаю ту же проблему.Для чего бы то ни было, я сортирую коллекцию через PropertySortDescriptors, фильтрую через DelegateFilterDescriptor и группирую через PropertyGroupDescriptor.У кого-нибудь есть предложения?