/// <summary> /// 显示项目总览(首页) /// </summary> private void ShowHomeView() { WaitCursorUtil.SetBusyState(); var workspace = _workspaces.FirstOrDefault(c => c is ProjectCategoryViewModel); if (workspace == null) { workspace = new ProjectCategoryViewModel(this); _workspaces.Add(workspace); } _currWorkspace = workspace; OnPropertyChanged("CurrWorkspace"); }
/// <summary> /// 修改项目状态命令 /// </summary> /// <param name="param"></param> private void SettingSelectionChanged(ExCommandParameter param) { if (param.Parameter == null) { return; } var status = param.Parameter.ToString(); //当前项目状态与修改的项目状态一致,不需要修改 if (String.Compare(_projectSelected.ProjStatus, _lastStatus, StringComparison.OrdinalIgnoreCase) == 0) { return; } //项目状态为”结束“的项目,不允许修改 if (String.Compare(_lastStatus, ProjectModel.ProjStatusOvered, StringComparison.OrdinalIgnoreCase) == 0) { MetroMessageBox.Show("已结束项目,项目状态不可修改!", "设置项目状态", MetroMessageBoxButton.OK, MetroMessageBoxImage.Info, MetroMessageBoxDefaultButton.OK); //恢复项目状态 _projectSelected.ProjStatus = _lastStatus; return; } var projId = _projectSelected.ProjId; string result = string.Empty; var msg = String.Format("确定将项目“{0}”状态修改为“{1}”?", _projectSelected.ProjName, status); if (MetroMessageBox.Show(msg, "设置项目状态", MetroMessageBoxButton.OKCancel, MetroMessageBoxImage.Question, MetroMessageBoxDefaultButton.OK) == MetroMessageBoxResult.OK) { WaitCursorUtil.SetBusyState(); if (String.Compare(status, ProjectModel.ProjStatusSetUped, StringComparison.OrdinalIgnoreCase) == 0) { result = SetSetupedStatus(projId); } else if (String.Compare(status, ProjectModel.ProjStatusStarted, StringComparison.OrdinalIgnoreCase) == 0) { result = SetStartedStatus(projId); } else if (String.Compare(status, ProjectModel.ProjStatusPaused, StringComparison.OrdinalIgnoreCase) == 0) { result = SetPausedStatus(projId); } else if (String.Compare(status, ProjectModel.ProjStatusOvered, StringComparison.OrdinalIgnoreCase) == 0) { result = SetOveredStatus(projId); } } else { //恢复项目状态 _projectSelected.ProjStatus = _lastStatus; } //显示操作结果 if (!string.IsNullOrEmpty(result)) { MetroMessageBox.Show(ResponContentUtil.GetResponResult(result), "设置项目状态", MetroMessageBoxButton.OK, MetroMessageBoxImage.Error, MetroMessageBoxDefaultButton.OK); //恢复项目状态 _projectSelected.ProjStatus = _lastStatus; } }
/// <summary> /// 刷新 /// </summary> public void Refresh() { WaitCursorUtil.SetBusyState(); CurrWorkspace.Refresh(); }