private void UpdateProjectBase() { isCreateOrUpdateProject = true; if (ProjectID == 0) { MessageBox.Show("请选择项目!", "错误"); return; } dataContext = new DataClassesProjectClassifyDataContext(); var pb = dataContext.ProjectBase.Single(p => p.ProjectId.Equals(ProjectID)); var newProjectBase = new NewProjectBase(); newProjectBase.Owner = this; newProjectBase.IsCreate = false; if (pb.ParentID != null) { newProjectBase.ParentID = (int)pb.ParentID; } newProjectBase.ProjectID = ProjectID; newProjectBase.ShowDialog(); if (DialogR) { dataContext = new DataClassesProjectClassifyDataContext(); //dataContext.Refresh(System.Data.Linq.RefreshMode.KeepChanges, dataContext.ProjectBase); MainTreeView.DataContext = dataContext.ProjectClassify; WindowDataBind(); BuildLinkProjectList(ProjectID); SetTreeViewFocus(); DialogR = false; } }
private void NewProjectBase() { isCreateOrUpdateProject = true; if (ProjectID != 0) { var projectBase = dataContext.ProjectBase.Single(p => p.ProjectId.Equals(ProjectID)); if (MessageBox.Show("新建 " + projectBase.ProjectName + " 下的子项目?", "温馨提示", MessageBoxButton.OKCancel) == MessageBoxResult.OK) { var newProjectBase = new NewProjectBase(); newProjectBase.Owner = this; newProjectBase.IsCreate = true; newProjectBase.IsSubProject = true; newProjectBase.ParentID = ProjectID; newProjectBase.ShowDialog(); if (DialogR) { dataContext = new DataClassesProjectClassifyDataContext(); dataContext.Refresh(RefreshMode.OverwriteCurrentValues, dataContext); MainTreeView.DataContext = dataContext.ProjectClassify; WindowDataBind(); var pr = dataContext.ProjectBase.OrderByDescending(p => p.ProjectId).FirstOrDefault(); ProjectID = pr.ProjectId; BuildLinkProjectList(ProjectID); while (pr.ParentID != null) { pr = dataContext.ProjectBase.Single(p => p.ProjectId.Equals(pr.ParentID)); } projectClassifyID = (int)pr.ProjectClassifyID; SetTreeViewFocus(); DialogR = false; } } } else { var newProjectBase = new NewProjectBase(); newProjectBase.Owner = this; newProjectBase.IsCreate = true; newProjectBase.IsSubProject = false; newProjectBase.ProjectClassifyID = projectClassifyID; newProjectBase.ShowDialog(); if (DialogR) { dataContext = new DataClassesProjectClassifyDataContext(); // dataContext.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, dataContext.ProjectBase); //List<ProjectBase> lProjectBase = dataContext.ProjectBase.ToList<ProjectBase>(); MainTreeView.DataContext = dataContext.ProjectClassify; WindowDataBind(); var pr = dataContext.ProjectBase.OrderByDescending(p => p.ProjectId).FirstOrDefault(); ProjectID = pr.ProjectId; BuildLinkProjectList(ProjectID); projectClassifyID = (int)pr.ProjectClassifyID; SetTreeViewFocus(); DialogR = false; } } }