2

私は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" コレクションにあります。何が間違っているのか、これを回避する方法はありますか?

4

2 に答える 2