Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将新项目添加到集合中不会';t当在Silverlight的Telerik RadGridView中显示时,不尊重现有排序_Silverlight_Telerik_Radgridview - Fatal编程技术网

将新项目添加到集合中不会';t当在Silverlight的Telerik RadGridView中显示时,不尊重现有排序

将新项目添加到集合中不会';t当在Silverlight的Telerik RadGridView中显示时,不尊重现有排序,silverlight,telerik,radgridview,Silverlight,Telerik,Radgridview,我的窗体上有一个RadGridView控件绑定到ViewModel中的集合。当我向集合中添加一个新项目时,它确实会在网格中显示该项目,但它总是放在末尾,不考虑当前排序。有人知道怎么解决这个问题吗 谢谢 我不确定您遇到了什么问题,但我快速提供了一个概念证明,一切似乎都按预期进行。请查看此处提供的下载: 让我知道它与您的设置有什么不同。我按ID排序,然后在添加新项时,新项会按预期填充到已排序的集合中,因为它们是使用原始范围内的随机ID生成的。也许您没有使用ObservableCollection或

我的窗体上有一个RadGridView控件绑定到ViewModel中的集合。当我向集合中添加一个新项目时,它确实会在网格中显示该项目,但它总是放在末尾,不考虑当前排序。有人知道怎么解决这个问题吗


谢谢

我不确定您遇到了什么问题,但我快速提供了一个概念证明,一切似乎都按预期进行。请查看此处提供的下载:

让我知道它与您的设置有什么不同。我按ID排序,然后在添加新项时,新项会按预期填充到已排序的集合中,因为它们是使用原始范围内的随机ID生成的。也许您没有使用ObservableCollection或*CollectionView


-Evan

如果在添加新项目时使用
ObservableCollection
解决问题,则可以使用
CellEditEnded
事件重置网格上的排序

您可以在代码或xaml中订阅事件;看一看。在处理程序中,可以取消排序,然后再次设置


我没有用telerik组件尝试过这一点,只是用了WPF
DataGrid

我使用的是EF生成的EntityCollection。。。我将网格直接绑定到model.AHhh,当我转换为ObservableCollection时,网格在添加新项时按预期工作。但是,它在编辑项目时不尊重排序。啊,如果是真的,请尝试将EF模型包装到QueryableCollectionView中(将System.Windows.Data添加到引用中)。QCV使用IEnumerable集合进行初始化,可以通过相同的绑定绑定到您的视图,并在编辑或其他任何操作时发送更新通知,以便RadGridView能够遵守此要求。如果您需要制作演示,请告诉我。:)我尝试了QueryableCollectionView,但我似乎在add上再次失去了可排序性,编辑仍然有效。