【问题标题】:Sorting observable collection in Radgridview在 Radgridview 中对可观察的集合进行排序
【发布时间】:2015-09-01 19:25:16
【问题描述】:

我在 silverlight 应用程序中使用 Telerik Radgridview。在那我已经将 itemsource 与可观察的集合绑定。每当更改集合时,radgridview.ItemSource 都会绑定到可观察集合。一切工作正常,但只要将项目添加到集合中,它就会附加到网格中。我想在添加后对集合进行排序。有什么简单的方法吗?

【问题讨论】:

    标签: c# silverlight telerik radgrid radgridview


    【解决方案1】:

    取决于您的实现细节,但我认为您应该能够在大多数情况下使用 LINQ 中的 OrderBy 和 CollectionChanged 事件来做到这一点。您只需重新订阅该事件。这是在快速测试中对我有用的代码:

    public class BindingViewModel : ViewModelBase
    {
        public BindingViewModel()
        {
            Items = new ObservableCollection<int>();
            Items.CollectionChanged += Items_CollectionChanged;
        }
    
        public void Add(int value)
        {
            Items.Add(value);
        }
    
        private void Items_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
        {
            Items = new ObservableCollection<int>(Items.OrderBy(x => x));
            Items.CollectionChanged += Items_CollectionChanged;
        }
    
        private ObservableCollection<int> _items;
        public ObservableCollection<int> Items
        {
            get { return _items; }
            set
            {
                _items = value;
                OnPropertyChanged("Items");
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2010-12-29
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      • 2014-06-22
      • 1970-01-01
      • 2017-11-04
      相关资源
      最近更新 更多