簡體   English   中英

調用add時,ObservableCollection依賴項屬性未更新

[英]ObservableCollection dependency property not updating when add is called

我的ObservableCollection遇到一些奇怪的問題。 我正在使用.Net 4.0。

我有一個像這樣的視圖模型:

PoViewModel : DataViewModelBase
{
    public ObservableCollection<PoDetail> PoDetails { <omitting dp boiler code for ease> }

    public void Add()
    {
        this.PoDetails.Add(new PoDetail()); //<-- this is not getting detected in the wpf UI
    }
}

DataViewModelBase是一個DependencyObject

我有一些測試代碼可以驗證什么都沒有發生:

protected override void OnPropertyChanged(DependencyPropertyChangedEventArgs e)
{
    base.OnPropertyChanged(e);
    this.IsDirty = true;
    MessageBox.Show(e.Property.Name + " just changed");
}

可能是什么問題呢? 我假設我不了解ObservableCollections的工作原理,但是從我閱讀的所有內容來看,這應該可以正常工作。

為什么在viewModel上需要依賴項屬性?

只需實現INotifyPropertyChanged就足夠了。

另外,在將元素添加到ObservableCollection時,您不希望名稱“ PoDetails”的屬性被更新。 您應該期望引發ObservableCollection實例的CollectionChanged事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM