private void creaAlbero() { if (_distinta == null) { return; } tvDiBa.Nodes.Clear(); if (_distinta.Componenti.Count() == 0) { tvDiBa.Nodes.Add(creaNodo(null)); } else { ComponenteBC componenteBase = _distinta.Componenti.Where(x => x.IdPadre == string.Empty).FirstOrDefault(); if (componenteBase == null) { return; } string etichettaNodo = componenteBase.CreaEtichetta(); TreeNode radice = new TreeNode(etichettaNodo); radice.Tag = componenteBase; tvDiBa.Nodes.Add(radice); aggiungiNodoEsistente(componenteBase.Anagrafica, radice, componenteBase.IdComponente); } tvDiBa.ExpandAll(); }
private bool trovaNodo(TreeNode nodoPadre, string anagrafica, out TreeNode nodoTrovato) { nodoTrovato = null; if (nodoPadre.Tag == null) { return(false); } ComponenteBC componente = (ComponenteBC)nodoPadre.Tag; if (componente == null) { return(false); } if (componente.Anagrafica == anagrafica) { nodoTrovato = nodoPadre; return(true); } foreach (TreeNode n in nodoPadre.Nodes) { bool esito = trovaNodo(n, anagrafica, out nodoTrovato); if (esito) { return(true); } } return(false); }
private void tvDiBa_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { if (e.Node.Tag == null) { return; } ComponenteBC componente = (ComponenteBC)e.Node.Tag; foreach (DataGridViewRow riga in dgvComponenti.Rows) { string anagrafica = (string)riga.Cells[clmAnagraficaComponente.Index].Value; int idComponente = (int)riga.Cells[clmIdComponenteComponente.Index].Value; // if (anagrafica == componente.Anagrafica) if (idComponente == componente.IdComponente) { riga.DefaultCellStyle.BackColor = Color.Yellow; } else { riga.DefaultCellStyle.BackColor = Color.White; } } PopolaGrigliaFasi(componente); }
private TreeNode creaNodo(TreeNode nodoPadre) { ComponenteBC componentePadre = null; if (nodoPadre != null && nodoPadre.Tag != null) { componentePadre = (ComponenteBC)nodoPadre.Tag; } ComponenteBC componente = new ComponenteBC(); componente.CollegamentoDiBa = ExpCicloBusinessCentral.CodiceCollegamentoStandard; if (componentePadre != null) { componente.IdPadre = componentePadre.Anagrafica; } componente.Quantita = 1; componente.UMQuantita = "NR"; string etichettaNodo = componente.Anagrafica; TreeNode nodo = new TreeNode(etichettaNodo); nodo.Tag = componente; _distinta.Componenti.Add(componente); return(nodo); }
private void PopolaGrigliaFasi(ComponenteBC componente) { if (componente == null) { dgvFasiCiclo.DataSource = null; return; } dgvFasiCiclo.AutoGenerateColumns = false; if (componente.FasiCiclo == null) { componente.FasiCiclo = new List <FaseCicloBC>(); } BindingList <FaseCicloBC> bindingList = new BindingList <FaseCicloBC>(componente.FasiCiclo); sourceFasiCicli = new BindingSource(bindingList, null); dgvFasiCiclo.DataSource = sourceFasiCicli; dgvFasiCiclo.Update(); }