//添加工序菜单 private void cmsGongyiAddGongxu_Click(object sender, EventArgs e) { AddGongxuFun(-1); SetStatusLabel("已添加工序到末尾", 2); FreshGongYiTree(); //编辑工序节点 OnEditGongxu = XML3DPPM.GetGongxuCount(XmlFile); OnEditGongbu = 0; IsEdit = true; FreshEditTable(); }
//添加工序按钮 private void tsrbtnAddGongxu_Click(object sender, EventArgs e) { TreeNode sel = tvwGongYi.SelectedNode; if (sel == null) { SetStatusLabel("请先选中树节点", 1); return; } if (sel.Tag.ToString() == "Gongyi") { AddGongxuFun(-1); SetStatusLabel("已创建新工序到末尾", 2); FreshGongYiTree(); //编辑工序节点 OnEditGongxu = XML3DPPM.GetGongxuCount(XmlFile); OnEditGongbu = 0; IsEdit = true; FreshEditTable(); return; } else if (sel.Tag.ToString() == "Gongxu") { int index = sel.Index; AddGongxuFun(index); SetStatusLabel("已插入新工序在选中节点前", 2); FreshGongYiTree(); //编辑工序节点 OnEditGongxu = index + 1; OnEditGongbu = 0; IsEdit = true; FreshEditTable(); return; } else if (sel.Tag.ToString() == "Gongbu") { SetStatusLabel("请选中工艺或工序节点", 2); return; } return; }
//刷新图纸树 public void FreshSheetTree() { tvwSheet.Nodes.Clear(); tvwSheet.ImageIndex = 3; tvwSheet.SelectedImageIndex = 3; //第一个为工艺节点 TreeNode gyTreeNode = new TreeNode(); string filename = XML3DPPM.GetModelName(0, 0, XmlFile); gyTreeNode.Text = XML3DPPM.GetIndexAttr(0, 0, "gongyi_jianming", XmlFile) + " (" + filename + ")"; gyTreeNode.Tag = "Gongyi"; bool IsNull = string.IsNullOrEmpty(filename); gyTreeNode.ImageIndex = IsNull?1:0; gyTreeNode.SelectedImageIndex = IsNull ? 1 : 0; tvwSheet.Nodes.Add(gyTreeNode); if (!string.IsNullOrEmpty(filename)) { List <S_Sheet> SheetTempletList = NXFun.GetSheetTempletList(ToFullPath(filename)); foreach (S_Sheet sheet in SheetTempletList) { TreeNode sheetTreeNode = new TreeNode(); sheetTreeNode.Text = sheet.SheetName + "_" + sheet.Remark; sheetTreeNode.Tag = "Sheet"; sheetTreeNode.Name = sheet.guid; //利用guid标识图纸 sheetTreeNode.ImageIndex = 2; sheetTreeNode.SelectedImageIndex = 2; gyTreeNode.Nodes.Add(sheetTreeNode); } } //之后为工序节点 int gxNum = XML3DPPM.GetGongxuCount(XmlFile); for (int i = 0; i < gxNum; i++) { TreeNode gxTreeNode = new TreeNode(); filename = XML3DPPM.GetModelName(0, i + 1, XmlFile); gxTreeNode.Text = XML3DPPM.GetIndexAttr(i + 1, 0, "gongxu_gongxuhao", XmlFile) + "_" + XML3DPPM.GetIndexAttr(i + 1, 0, "gongxu_gongxumingcheng", XmlFile) + " (" + filename + ")"; gxTreeNode.Tag = "Gongxu"; IsNull = string.IsNullOrEmpty(filename); gxTreeNode.ImageIndex = IsNull ? 1 : 0; gxTreeNode.SelectedImageIndex = IsNull ? 1 : 0; tvwSheet.Nodes.Add(gxTreeNode); if (!string.IsNullOrEmpty(filename)) { List <S_Sheet> SheetTempletList = NXFun.GetSheetTempletList(ToFullPath(filename)); foreach (S_Sheet sheet in SheetTempletList) { TreeNode sheetTreeNode = new TreeNode(); sheetTreeNode.Text = sheet.SheetName + "_" + sheet.Remark; sheetTreeNode.Tag = "Sheet"; sheetTreeNode.Name = sheet.guid; //利用guid标识图纸 sheetTreeNode.ImageIndex = 2; sheetTreeNode.SelectedImageIndex = 2; gxTreeNode.Nodes.Add(sheetTreeNode); } } } tvwSheet.ExpandAll(); CharEdit.RefreshSheet(); }