The following example demonstrates how to subscribe to the CollectionChanged event of the DataGridCollectionView.SortDescriptions collection's INotifyCollectionChanged interface implementation to be notified when sorting applied to a grid's columns changes.
VB.NET |
Copy Code |
---|---|
Protected Overrides Sub OnInitialized(ByVal e As EventArgs) MyBase.OnInitialized(e) Dim view As DataGridCollectionView = TryCast(Me.OrdersGrid.ItemsSource, DataGridCollectionView) AddHandler (CType(view.SortDescriptions, INotifyCollectionChanged)).CollectionChanged, AddressOf SortCollectionChanged End Sub Private Sub SortCollectionChanged(ByVal sender As Object, ByVal e As NotifyCollectionChangedEventArgs) Debug.WriteLine("Sort changed") End Sub |
C# |
Copy Code |
---|---|
protected override void OnInitialized( EventArgs e ) { base.OnInitialized( e ); DataGridCollectionView view = this.OrdersGrid.ItemsSource as DataGridCollectionView; ( ( INotifyCollectionChanged )view.SortDescriptions ).CollectionChanged += new NotifyCollectionChangedEventHandler( this.SortCollectionChanged ); } private void SortCollectionChanged( object sender, NotifyCollectionChangedEventArgs e ) { Debug.WriteLine( "Sort changed" ); } |