private void tsmiEditItems_Click(object sender, EventArgs e) { if (tvwItem.SelectedNode == null) { return; } XmlNode Item = (XmlNode)tvwItem.SelectedNode.Tag; frmAddItemData frm = new frmAddItemData(); frm.funStart(); frm._InputItem = Item; frm._xmlDoc = xmlDoc; if (frm.ShowDialog() == DialogResult.Yes) { XmlNode Section; string ID = tvData.SelectedNode.Name.Split(new char[] { ':' }).GetValue(0).ToString(); if (tvwItem.SelectedNode.Parent == null) { Section = xmlDoc.SelectSingleNode("//Document/Data/Section[@ID='" + ID + "']"); } else { Section = ((XmlNode)tvwItem.SelectedNode.Tag).ParentNode; } Section.RemoveChild(Item); XmlNode Items = xmlDoc.CreateElement("Items"); XmlAttribute att = xmlDoc.CreateAttribute("Name"); att.Value = frm.getName; Items.Attributes.Append(att); att = xmlDoc.CreateAttribute("Type"); att.Value = frm.getType; Items.Attributes.Append(att); if (frm._nodeOut != null) { Items.AppendChild(frm._nodeOut); } if (frm._ListItem == null) { Items.AppendChild(frm._nodeOutItem); } else { XmlNodeList Item2 = frm._ListItem.SelectNodes("./Item"); for (int i = 0; i < Item2.Count; i++) { Items.AppendChild(Item2[i]); } } Section.AppendChild(Items); tvwItem.SelectedNode.Name = frm.getName + ":" + frm.getType; tvwItem.SelectedNode.Text = "Item Name:" + frm.getName + " Type:" + frm.getType; tvwItem.SelectedNode.Tag = Items; if (frm.getType == "FIX") { tvwItem.SelectedNode.Nodes.Clear(); } } if (!frm.IsDisposed) { frm.Close(); frm.Dispose(); } funDrawMainTree(); }
private void AddItem(string sCommand) { if (tvData.SelectedNode == null) { return; } if (sCommand == "Root") { XmlNode node = (XmlNode)tvData.SelectedNode.Tag; frmAddItemData frm = new frmAddItemData(); frm._xmlDoc = xmlDoc; frm._nodeMeans = node; frm.funStart(); if (frm.ShowDialog() == DialogResult.Yes) { TreeNode nodeT = new TreeNode(); nodeT.Name = frm.getName + ":" + frm.getType; nodeT.Text = "Item Name:" + frm.getName + " Type:" + frm.getType; XmlNode Section; string ID = tvData.SelectedNode.Name.Split(new char[] { ':' }).GetValue(0).ToString(); if (tvwItem.SelectedNode == null) { Section = xmlDoc.SelectSingleNode("//Document/Data/Section[@ID='" + ID + "']"); } else { if (tvwItem.SelectedNode.Parent != null) { Section = (XmlNode)tvwItem.SelectedNode.Parent.Tag; } else { Section = xmlDoc.SelectSingleNode("//Document/Data/Section[@ID='" + ID + "']"); } } XmlNode Items = xmlDoc.CreateElement("Items"); XmlAttribute att = xmlDoc.CreateAttribute("Name"); att.Value = frm.getName; Items.Attributes.Append(att); att = xmlDoc.CreateAttribute("Type"); att.Value = frm.getType; Items.Attributes.Append(att); if (frm._nodeOut != null) { Items.AppendChild(frm._nodeOut); } if (frm._ListItem == null) { Items.AppendChild(frm._nodeOutItem); } else { XmlNodeList Item = frm._ListItem.SelectNodes("./Item"); for (int i = 0; i < Item.Count; i++) { Items.AppendChild(Item[i]); } } Section.AppendChild(Items); nodeT.Tag = Items; if (tvwItem.SelectedNode == null) { tvwItem.Nodes.Add(nodeT); } else { if (tvwItem.SelectedNode.Parent != null) { tvwItem.SelectedNode.Parent.Nodes.Add(nodeT); } else { tvwItem.Nodes.Add(nodeT); } } } if (!frm.IsDisposed) { frm.Close(); frm.Dispose(); } } else { if (sCommand != "Root") { if (tvwItem.SelectedNode.Name.Split(new char[] { ':' }).GetValue(1).ToString().ToUpper() == "FIX") { MSG.Error("äÁèÊÒÁÒöà¾ÔèÁ Item ä´éà¹×èͧ¨Ò¡ Item ¹ÕéÁÕ Type à»ç¹ FIX â»Ã´á¡éä¢ Type ¡è͹", "¢éͼԴ¾ÅÒ´"); return; } } XmlNode node = (XmlNode)tvData.SelectedNode.Tag; frmAddItemData frm = new frmAddItemData(); frm._xmlDoc = xmlDoc; frm._nodeMeans = node; frm.funStart(); if (frm.ShowDialog() == DialogResult.Yes) { TreeNode nodeT = new TreeNode(); nodeT.Name = frm.getName + ":" + frm.getType; nodeT.Text = "Item Name:" + frm.getName + " Type:" + frm.getType; XmlNode Section; XmlNode SelectItem = (XmlNode)tvwItem.SelectedNode.Tag; Section = SelectItem.SelectSingleNode("./Item"); XmlNode Items = xmlDoc.CreateElement("Items"); XmlAttribute att = xmlDoc.CreateAttribute("Name"); att.Value = frm.getName; Items.Attributes.Append(att); att = xmlDoc.CreateAttribute("Type"); att.Value = frm.getType; Items.Attributes.Append(att); if (frm._nodeOut != null) { Items.AppendChild(frm._nodeOut); } if (frm._ListItem == null) { Items.AppendChild(frm._nodeOutItem); } else { XmlNodeList Item = frm._ListItem.SelectNodes("./Item"); for (int i = 0; i < Item.Count; i++) { Items.AppendChild(Item[i]); } } Section.AppendChild(Items); nodeT.Tag = Items; tvwItem.SelectedNode.Nodes.Add(nodeT); } } tvwItem.ExpandAll(); funDrawMainTree(); }