2017-11-26 22 views
0

UWPコミュニティツールキットのMasterDetailsViewを使用しています。 データは私のcustomObservableCollection<T>で保持されています。 リストからアイテムを追加または削除すると、アップデートがトリガされ、MasterDetailsViewに新しいリストが表示されます。MasterDetailsViewがINotifyPropertyChangedイベントで更新されない

ただし、リストのitem(チャット、イメージなど)のプロパティを変更すると、MasterDetailsViewは新しいリストに更新されません。 のPropertyChangedイベントがトリガーされます。

MasterDetailsViewのような継ぎ目はのPropertyChangedイベントに登録されていません。

これを取得する方法はありますか?

=> Link to my implementation of the MasterDetailsView (.xaml)

=> Link to my implementation of the MasterDetailsView (.cs)

答えて

1

セットが、私はそれがこのであることをわからないんだけど、あなたは、リストの項目内のプロパティの値を変更した場合

ItemsSource="{x:Bind chatsList, Mode = OneWay}" 
Chat="{x:Bind chat, Mode = OneWay}" 
Client="{x:Bind client, Mode = OneWay}" 
+0

これは、ありがとう! – COM8

0

の結合にMode = OneWayをバインド - 観測ができますそれを見てください。コレクションは、オブジェクトを追加したり削除したりするときに、オブジェクトがそのオブジェクトに属し、ストアされたアイテムの実装に関する知識がないために表示されます。

変更されたアイテムに対してinvoke PropertyChangedを試行してください。私はそれがうまくいくと思う。

+0

私はすでに 'INotifyPropertyChanged'インターフェース(= item)(https://github.com/COM8/UWP-XMPP-Client/blob/master/UWP%20XMPP%20Client/DataTemplates/ChatTemplate.cs)を実装しています[ => ObservableCollection](https://github.com/COM8/UWP-XMPP-Client/blob/master/UWP%20XMPP%20Client/Classes/CustomObservableCollection.cs)を開き、 'PropertyChanged'イベントをトリガします。 – COM8

関連する問題