private void btn_save_Click(object sender, EventArgs e) { if (txt_value.Text.Trim() == string.Empty) { MessageBoxEx.Show("名称不能为空,请输入一个名称", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } else { switch (codeType) { case CodeTypeEnum.Brand: if (brandCode == null) { brandCode = new Tb_code(); brandCode.id = CodeCache.getBrand().Count == 0 ? 1000 : CodeCache.getBrand().Max(c => c.id) + 1;//品牌默认从1000开始 brandCode.codeType = (int)CodeTypeEnum.Brand; brandCode.parentId = classCode.id; } brandCode.codeName = txt_value.Text.Trim(); CodeCache.addCache(brandCode); break; case CodeTypeEnum.Model: if (modelCode == null) { modelCode = new Tb_code(); modelCode.id = CodeCache.getModel().Count == 0 ? 2000 : CodeCache.getModel().Max(c => c.id) + 1;//型号从2000开始 modelCode.codeType = (int)CodeTypeEnum.Model; modelCode.parentId = brandCode.id; } modelCode.codeName = txt_value.Text.Trim(); CodeCache.addCache(modelCode); break; case CodeTypeEnum.Class: if (classCode == null) { classCode = new Db.Entity.Tb_code(); classCode.id = CodeCache.getClass().Count == 0 ? 3000 : CodeCache.getClass().Max(c => c.id) + 1;//分类默认从3000开始 classCode.codeType = (int)CodeTypeEnum.Class; } classCode.codeName = txt_value.Text.Trim(); CodeCache.addCache(classCode); break; default: break; } this.Close(); } }
private void traversalNode(Node pNode) { if (pNode.HasChildNodes) { foreach (Node node in pNode.Nodes) { if (node.Style != null) { if (node.Style.BackColor == Color.LawnGreen)//修改过的node { var tb_code = node.Tag as Tb_code; tb_code.codeName = node.Text; CodeCache.addCache(tb_code); node.Style = null; } if (node.Style.BackColor == Color.Red)//新增的node { Tb_code tb_code = new Tb_code(); tb_code.codeName = node.Text; if (node.Level == 2)//检测内容 { tb_code.codeType = 6; tb_code.id = CodeCache.getDetection().Count == 0 ? 6000 : CodeCache.getDetection().Max(c => c.id) + 1; //检测内容从6000开始 } if (node.Level == 3) //检测分项 { tb_code.codeType = 7; tb_code.id = CodeCache.getSubDetection().Count == 0 ? 7000 : CodeCache.getSubDetection().Max(c => c.id) + 1;//检测分项从7000开始 } tb_code.parentId = (node.Parent.Tag as Tb_code).id; CodeCache.addCache(tb_code); node.Style = null; node.Tag = tb_code;//将code赋给tag,以便在新增node的新增子node中,可以找到parentId } } traversalNode(node); } } }
/// <summary> /// 增加node /// </summary> /// <param name="pNode"></param> /// <param name="code">初始化tree时不为null;弹出菜单新增node时为null</param> private Node addNode(Node pNode, Tb_code code = null) { Node node = new Node(); node.ContextMenu = cms; pNode.Nodes.Add(node); node.Editable = node.Level < 2 ? false : true; //level0是根节点,level1是分类,都不允许修改。level大于等于2时可以修改 if (code == null) //弹出菜单上新增node { node.Style = new ElementStyle() { BackColor = Color.Red }; node.BeginEdit(); } else//初始化tree时新增node { node.Text = code.codeName; node.Tag = code; } return(node); }