/// <summary> /// 選択アイテムが変更された時の処理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void OnSelectedItemChanged(object sender, PropertyChangedEventArgs e) { var mainViewModel = sender as MainViewModel; if (mainViewModel == null) { return; } PathListViewModel.Clear(); //パスリストの再生成 CreatePathList(mainViewModel.SelectedItem); }
/// <summary> /// パスリストを生成 /// </summary> /// <param name="content"></param> private void CreatePathList(Content content) { Contract.Requires(PathList != null); Contract.Requires(!PathList.Any()); //子要素から親要素に向かってリスト先頭に要素を追加 PathListViewModel.Insert(0, new PathBarItemViewModel(this, content)); if (content.Parent != null) { CreatePathList(content.Parent); } ; }