/// <summary> /// Allocates the new project criterion. /// </summary> /// <param name="projCritToAllocate">The proj crit to allocate.</param> /// <param name="index">The index.</param> /// Erstellt von Veit Berg, am 27.01.16 public void AllocateNewProjectCriterion(ProjectCriterion projCritToAllocate, int index) { try{ ProjCrits.Add(projCritToAllocate); projCritCont.ChangeAllocationOfProjectCriterionsInDb(ProjectId, ProjCrits); // AllCrits.Remove((Criterion)projCritToAllocate); //foreach (ProjectCriterion projCrit in ProjCrits) //{ // Criterion allocatedCrit = AllCrits.Single(crit => crit.Criterion_Id == projCrit.Criterion_Id); // AllCrits.Remove(allocatedCrit); //} using (CriterionController critCont = new CriterionController()) { AllCrits = critCont.GetAllCriterionsFromDb(); if (ProjCrits.Count != 0) { foreach (ProjectCriterion projCrit in ProjCrits) { Criterion allocatedCrit = AllCrits.Single(crit => crit.Criterion_Id == projCrit.Criterion_Id); AllCrits.Remove(allocatedCrit); } } } using (ProjectCriterionController proCriCont = new ProjectCriterionController()) { ProjCrits = proCriCont.GetAllProjectCriterionsForOneProject(ProjectId); } using (CriterionController critCont = new CriterionController()) { AllCrits = critCont.GetAllCriterionsFromDb(); if (ProjCrits.Count != 0) { foreach (ProjectCriterion projCrit in ProjCrits) { Criterion allocatedCrit = AllCrits.Single(crit => crit.Criterion_Id == projCrit.Criterion_Id); AllCrits.Remove(allocatedCrit); } } } dataGridView_CritAvail.DataSource = null; dataGridView_CritAvail.DataSource = AllCrits; refreshGridL(); } catch (Exception x) { MessageBox.Show(x.Message); } }
/// <summary> /// Handles the Click event of the btn_CritToPool control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> /// Erstellt von Veit Berg, am 27.01.16 private void btn_CritToPool_Click(object sender, EventArgs e) { try{ if ((int)dataGridView_ProjCrits.SelectedRows[0].Index >= 0) { DataGridViewRow row = dataGridView_ProjCrits.SelectedRows[0]; int CritId = (int)row.Cells["Criterion_Id"].Value; int index = dataGridView_ProjCrits.CurrentCell.RowIndex; ProjCrits.RemoveAt(index); projCritCont.ChangeAllocationOfProjectCriterionsInDb(ProjectId, ProjCrits); using (ProjectCriterionController proCriCont = new ProjectCriterionController()) { ProjCrits = proCriCont.GetAllProjectCriterionsForOneProject(ProjectId); } using (CriterionController critCont = new CriterionController()) { AllCrits = critCont.GetAllCriterionsFromDb(); if (ProjCrits.Count != 0) { foreach (ProjectCriterion projCrit in ProjCrits) { Criterion allocatedCrit = AllCrits.Single(crit => crit.Criterion_Id == projCrit.Criterion_Id); AllCrits.Remove(allocatedCrit); } } } dataGridView_CritAvail.DataSource = null; dataGridView_CritAvail.DataSource = AllCrits; refreshGridL(); } else { MessageBox.Show("Bitte erst eine Zeile auswählen"); } } catch (Exception x) { MessageBox.Show(x.Message); } }
/// <summary> /// Handles the Load event of the ProjCritAssign_Form control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> /// Erstellt von Veit Berg, am 27.01.16 private void ProjCritAssign_Form_Load(object sender, EventArgs e) { try{ using (ProjectCriterionController proCriCont = new ProjectCriterionController()) { ProjCrits = proCriCont.GetAllProjectCriterionsForOneProject(ProjectId); } using (CriterionController critCont = new CriterionController()) { AllCrits = critCont.GetAllCriterionsFromDb(); if (ProjCrits.Count != 0) { foreach (ProjectCriterion projCrit in ProjCrits) { Criterion allocatedCrit = AllCrits.Single(crit => crit.Criterion_Id == projCrit.Criterion_Id); AllCrits.Remove(allocatedCrit); } } } dataGridView_CritAvail.Rows.Clear(); var CritBindingList = new BindingList <Criterion>(AllCrits); var CritSource = new BindingSource(CritBindingList, null); dataGridView_CritAvail.DataSource = AllCrits; dataGridView_CritAvail.Columns[0].HeaderText = "ID"; dataGridView_CritAvail.Columns[0].Width = 30; dataGridView_CritAvail.Columns[1].Width = 200; dataGridView_CritAvail.Columns[2].Width = 240; dataGridView_CritAvail.Columns["Description"].HeaderText = "Beschreibung"; dataGridView_CritAvail.Columns[0].ReadOnly = true; dataGridView_CritAvail.Columns[1].ReadOnly = true; dataGridView_CritAvail.Columns[2].ReadOnly = true; dataGridView_ProjCrits.Rows.Clear(); using (CriterionController critCon = new CriterionController()) { foreach (ProjectCriterion projCrit in ProjCrits) { var singleCritId = critCon.GetCriterionById(projCrit.Criterion_Id); projCrit.Name = singleCritId.Name.ToString(); } } var ProjCritBindingList = new BindingList <ProjectCriterion>(ProjCrits); var projCritSource = new BindingSource(ProjCritBindingList, null); dataGridView_ProjCrits.DataSource = ProjCrits; dataGridView_ProjCrits.Columns.Remove("Project_Id"); dataGridView_ProjCrits.Columns.Remove("Layer_Depth"); dataGridView_ProjCrits.Columns.Remove("Weighting_Cardinal"); dataGridView_ProjCrits.Columns.Remove("Weighting_Percentage_Layer"); dataGridView_ProjCrits.Columns.Remove("Weighting_Percentage_Project"); dataGridView_ProjCrits.Columns.Remove("Criterion"); dataGridView_ProjCrits.Columns.Remove("ParentCriterion"); dataGridView_ProjCrits.Columns.Remove("Project"); dataGridView_ProjCrits.Columns.Add("Beschreibung", "Beschreibung"); int i = 0; foreach (ProjectCriterion ProCri in ProjCrits) { dataGridView_ProjCrits["Beschreibung", i].Value = ProCri.Criterion.Description; i++; } dataGridView_ProjCrits.Columns[0].HeaderText = "ID"; dataGridView_ProjCrits.Columns[0].Width = 40; dataGridView_ProjCrits.Columns[1].HeaderText = "P-ID"; dataGridView_ProjCrits.Columns[1].Width = 40; dataGridView_ProjCrits.Columns[2].Width = 200; dataGridView_ProjCrits.Columns[3].Width = 190; dataGridView_ProjCrits.Columns[0].ReadOnly = true; dataGridView_ProjCrits.Columns[1].ReadOnly = true; dataGridView_ProjCrits.Columns[2].ReadOnly = true; dataGridView_ProjCrits.Columns[3].ReadOnly = true; this.FormClosing += new FormClosingEventHandler(ProjCritAssign_View_FormClosing); } catch (Exception i) { MessageBox.Show(i.Message); } }