Exemplo n.º 1
0
        void ListenToCollectionChanges()
        {
            if (m_vector == null)
            {
                throw new InvalidOperationException("Backing vector not set");
            }
            var incc = m_vector as INotifyCollectionChanged;

            if (incc != null)
            {
                incc.CollectionChanged   += OnCollectionChanged;
                m_notifyCollectionChanged = incc;
            }
            else
            {
                var bindableObservableVector = m_vector as IBindableObservableVector;
                if (bindableObservableVector != null)
                {
                    bindableObservableVector.VectorChanged += OnBindableVectorChanged;
                    m_bindableObservableVector              = bindableObservableVector;
                }
                else
                {
                    var observableVector = m_vector as IObservableVector <object>;
                    if (observableVector != null)
                    {
                        observableVector.VectorChanged += OnVectorChanged;
                        m_observableVector              = observableVector;
                    }
                }
            }
        }
Exemplo n.º 2
0
 void OnBindableVectorChanged(IBindableObservableVector sender, object e)
 {
     OnVectorChanged(default, (IVectorChangedEventArgs)e);
 private void userList_VectorChanged(IBindableObservableVector vector, object e)
 {
     VectorChanged?.Invoke(this, e);
     OnPropertyChanged(nameof(Count));
 }
Exemplo n.º 4
0
 void OnBindableVectorChanged(IBindableObservableVector sender, object e)
 {
     OnVectorChanged(
         sender as IObservableVector <object>,
         e as IVectorChangedEventArgs);
 }