//добавление элемента DragDrop private void listBox1_DragDrop(object sender, DragEventArgs e) { lbxBlockEquip.Items.Add((lbxBlockEquip.Items.Count + 1) + "." + typeEquip[0] + e.Data.GetData(DataFormats.Text)); object data = e.Data.GetData(DataFormats.StringFormat); #region Оборудование if (_currentBreaker != null) { #region /*связанные трансфмораторы тока*/ foreach (ProjectCtr pctr in ConfigServices.GetBindedCurTrans(_currentBreaker)) { pctr.Title = ConfigServices.GetCtrTitile(pctr); listBlockEquip.Add(new BlockEquipment() { IdEquip = pctr.IdProjectEquip, TypeEquip = typeEquip[1], Title = pctr.Title }); lbxBlockEquip.Items.Add((lbxBlockEquip.Items.Count + 1) + "." + typeEquip[1] + pctr.Title); } #endregion #region /*связанный контактор*/ ProjectCnt pcnt = ConfigServices.GetBindedCont(_currentBreaker); if (pcnt != null) { pcnt.Title = ConfigServices.GetCntTitle(pcnt); if (pcnt.Title.Contains("нет")) { pcnt.Title = pcnt.Title.Replace("+ реле нет", ""); } listBlockEquip.Add(new BlockEquipment() { IdEquip = pcnt.IdProjectEquip, TypeEquip = typeEquip[2], Title = pcnt.Title }); lbxBlockEquip.Items.Add((lbxBlockEquip.Items.Count + 1) + "." + typeEquip[2] + pcnt.Title); } #endregion listBlockEquip.Add(new BlockEquipment() { IdEquip = _currentBreaker.IdProjectEquip, TypeEquip = typeEquip[0], Title = _currentBreaker.Title }); } #endregion txtResult.Text = BuildBlockName(txtResult.Text, 19, ConfigServices.GetManufLiter(_currentBreaker)); txtFeeder.Text = _currentBreaker.ConNum; //наименование присоединения dgvProjectCbr.Rows.Remove(dgvProjectCbr.SelectedRows[0]); //убрать из списка добавленный автомат cboShema.Enabled = true; }
//получить обозначение контактора public string GetCntTitle(ProjectCnt peCnt) { using (DataEntities db = new DataEntities()) { string pcntTitle = (from cnt in db.Contactors join mnf in db.Manufacturers on cnt.IdManufacturer equals mnf.Id join sr in db.Serias on cnt.IdSeria equals sr.Id where cnt.Id == peCnt.Id select new ProjectCnt { Title = /*mnf.Name + " " + */ sr.Name + " " + cnt.ContCatNumber + " + реле " + cnt.RelayCabNumber }).SingleOrDefault().Title; return(pcntTitle); } }
//получить связанный контактор public ProjectCnt GetBindedCont(ProjectCbr peCbr) { using (DataEntities db = new DataEntities()) { ProjectCnt prCont = (from cnt in db.Contactors join pe in db.ProjectEquipments on cnt.Id equals pe.IdCont join en in db.EquipNotes on pe.IdNote equals en.Id where pe.IdNote == peCbr.IdNote && pe.IdProjectNumber == peCbr.IdProjectNumber select new ProjectCnt { Id = cnt.Id, IdProjectNumber = peCbr.IdProjectNumber, IdProjectEquip = pe.Id, IdNote = pe.IdNote, ConNum = en.Text, IdManufacturer = cnt.IdManufacturer, IdSeria = cnt.IdSeria, ContCatNumber = cnt.ContCatNumber, RelayCabNumber = cnt.RelayCabNumber }).SingleOrDefault(); return(prCont); } }
//получить обозначение контактора public static string GetCntTitle(ProjectCnt peCnt) { return(confobject.GetCntTitle(peCnt)); }