モデルに INotifyProperyChanged や INotifyCollectionChanged などの UI 固有のものを追加したり、さまざまなイベントを大量に作成したり、さまざまなイベントを作成したりせずに、モデルの変更をビュー モデルに通知する方法がわかりません。それらはUI固有のものであり、モデルから離れるべきです。
それ以外の場合は、すべてが最新であることを確認するために、ビュー モデル内のすべてのビジネス ロジックを複製する必要があります。
私のモデルにあるトリッキーなものの 1 つは、"Category" クラスのプロパティです。これはツリー構造と考えることができ、プロパティはすべてリーフノードの子孫です。このモデルでは、すべての子を介してプロパティがその場で再帰的に生成されますが、これはすべて問題ありません。ただし、ビューモデルはそのプロパティにバインドする必要があり、いつ変更されるかを知る必要があります。ビューモデルに対応するようにモデルを変更する必要がありますか? 私がそうすると、ビューモデルはこの時点で実際には何もしません。モデルは必要な変更の通知をすべて発生させ、ビューはモデルに直接バインドできます。また、モデルがソースを持っていないものである場合、どうすればこれを回避できますか?