public void Refresh() { if (!string.IsNullOrEmpty(_filePath) && !_isChanged) { var project = LaodProject(_filePath, true); if (project == null) { return; } _project = project; } try { _eventTriggering = EventTriggering.DoNotTriggerHierarchyChanged; _projectViewModel = new ProjectViewModel(_project, this); _nodes.Clear(); _nodes.Add(_projectViewModel); _projectViewModel.Expand(); _projectViewModel.IsSelected = true; _navigator.Clear(); } finally { _eventTriggering = EventTriggering.TriggerAll; } OnHierarchyChanged(); }
protected override void OnActivate() { _eventTriggering = EventTriggering.DoNotTriggerHierarchyChanged; if (!IsNew) { _shell.ProjectMRUList.Add(_filePath); } StrongNamePasswordCache.AddKeys(_project); // Attache events. Commands.AddAssembly.Subscribe(AddAssembly); Commands.RemoveAssembly.Subscribe(RemoveSelectedAssembly, CanRemoveSelectedAssembly); Commands.Save.Subscribe(Save, CanSave); Commands.Build.Subscribe(Build); Commands.Refresh.Subscribe(Refresh); Commands.GoBack.Subscribe(GoBack, CanGoBack); Commands.GoForward.Subscribe(GoForward, CanGoForward); Commands.ExpandAll.Subscribe(ExpandAll); Commands.CollapseAll.Subscribe(CollapseAll); Commands.ViewSearch.Subscribe(ShowSearch); Commands.ViewDecodeStackTrace.Subscribe(ShowDecodeStackTrace); // Add and show project view. _projectViewModel = new ProjectViewModel(_project, this); _nodes.Add(_projectViewModel); _projectViewModel.Expand(); _projectViewModel.IsSelected = true; // Update main window caption. _shell.WindowTitle = _projectViewModel.Caption; _eventTriggering = EventTriggering.TriggerAll; base.OnActivate(); }