私はViewModelの最初のアプローチでPrismを使用しています。
1) ViewModel をコンテナー (この場合は unity) に登録します。
2)DataTemplate
各 vm に(UserControl)を提供します。
3) Container に登録した ViewModel 名を使用してナビゲートします。
_regionManager.RequestNavigate(regionName, viewModelName, navigationCallBack);
これは正常に機能しますが、この領域から「ビュー」を削除しようとすると、次の例外が発生します。
The region does not contain the specified view. Parameter name: view
私は削除しようとします:
var region = _regionManager.Regions[requests[i].RegionName];
var view = region.Views.Single(v => v.GetType().Name == requests[i].ViewName);
region.Remove(view);
ViewModel は "Views" コレクションにあります。何が間違っているのか、これを回避する方法はありますか?