関連する変更が行われたときICollectionView
に呼び出すことなく、フィルターを自動的に更新する方法はありますか?Refresh()
私は次のものを持っています:
[Notify]
public ICollectionView Workers { get; set; }
このプロパティの [Notify] 属性は実装されているだけINotifyPropertyChanged
ですが、この状況では何もしていないようです。
Workers = new CollectionViewSource { Source = DataManager.Data.Workers }.View;
Workers.Filter = w =>
{
Worker worker = w as Worker;
if (w == null)
return false;
return worker.Employer == this;
};
XAML の場合:
<TextBlock x:Name="WorkersTextBlock"
DataContext="{Binding PlayerGuild}"
FontFamily="Pericles"
Text="{Binding Workers.Count,
StringFormat=Workers : {0},
FallbackValue=Workers : 99}" />
更新:使用ICollectionView
が必要になりそうなので、このトピックを再訪したいと思います。ICollectionView
この質問に報奨金を追加しています。その受取人は、手動で更新する必要のない「ハンズオフ」を実装する方法について洞察を提供できる人になります。この時点で、私はどんなアイデアにもオープンです。