私は WPF/Prism 4/AvalonDoc アプリケーションに取り組んでいます。
私のビューの 1 つが非常に複雑で、ViewModel が巨大で扱いにくくなっています。そこで、独自の ViewModel を持つ小さなビューに分割することにしました。
ビューにリージョンを配置し、「マスター」ViewModel コンストラクターから regionManager.RegisterViewWithRegion メソッドを使用してサブビューをそのリージョンにロードしました。
ビューのインスタンスが 1 つだけ読み込まれている場合、これは期待どおりに機能します。しかし、その画面の 2 番目のインスタンス (DocumentContent として AvalonDock の DocumentPane にロードされる) を開くと、「View already exists in region」というエラーが表示されます。
可能であれば、地域に一意の名前を付けることは避けたいと思います。「マスター」ビューの特定のインスタンスにサブビューを追加していることを示す方法はありますか? これを行う方法について何かアドバイスはありますか?