Beispiel #1
0
        /// <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");
        }
Beispiel #2
0
        /// <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;
            }
        }
Beispiel #3
0
 /// <summary>
 /// 刷新
 /// </summary>
 public void Refresh()
 {
     WaitCursorUtil.SetBusyState();
     CurrWorkspace.Refresh();
 }