private void CreateNodeByXmlNode(XmlNode node, TreeNode treeNode, string xpathRoot) { try { TreeNode treeNode2 = new TreeNode(node.Name); TreeXmlNodeNodeTag treeXmlNodeNodeTag = new TreeXmlNodeNodeTag(); treeXmlNodeNodeTag.XpathExpression0 = xpathRoot + "/" + GetNamespacePrefix(node) + NormalizeXPathElementName(node.Name); treeXmlNodeNodeTag.XpathExpression1 = xpathRoot + "/" + GetNamespacePrefix(node) + NormalizeXPathElementName(node.Name) + "[text()='{0}']"; treeXmlNodeNodeTag.XmlNode = node; treeNode2.Tag = treeXmlNodeNodeTag; if (node.Attributes != null && node.Attributes.Count != 0) { TreeNode treeNode3 = new TreeNode(SR.GetString("CF_Attr2")); treeNode3.Tag = null; foreach (XmlAttribute attribute in node.Attributes) { if (!attribute.Name.Contains("xmlns")) { TreeNode treeNode4 = new TreeNode(attribute.Name + SR.GetString("CF_Equal") + attribute.Value); TreeAttributeNodeTag treeAttributeNodeTag = new TreeAttributeNodeTag(); treeAttributeNodeTag.XpathExpression0 = xpathRoot + "/" + GetNamespacePrefix(node) + NormalizeXPathElementName(node.Name) + "[@" + GetNamespacePrefix(attribute) + NormalizeXPathElementName(attribute.Name) + "]"; treeAttributeNodeTag.XpathExpression1 = xpathRoot + "/" + GetNamespacePrefix(node) + NormalizeXPathElementName(node.Name) + "[@" + GetNamespacePrefix(attribute) + NormalizeXPathElementName(attribute.Name) + "='{0}']"; treeAttributeNodeTag.Name = attribute.Name; treeAttributeNodeTag.Value = attribute.Value; treeAttributeNodeTag.XmlNode = node; treeNode4.Tag = treeAttributeNodeTag; treeNode3.Nodes.Add(treeNode4); } } if (treeNode3.Nodes.Count != 0) { treeNode2.Nodes.Add(treeNode3); } } if (node.HasChildNodes) { foreach (XmlNode childNode in node.ChildNodes) { if (!(childNode.Name == "#text")) { CreateNodeByXmlNode(childNode, treeNode2, xpathRoot + "/" + GetNamespacePrefix(node) + NormalizeXPathElementName(node.Name)); } } } if (treeNode == null) { treeView.Nodes.Add(treeNode2); } else { treeNode.Nodes.Add(treeNode2); } } catch (Exception ex) { ExceptionManager.GeneralExceptionFilter(ex); throw new AppSettingsException(SR.GetString("CF_Err17"), ex); } }
private void AppendTreeNode(TreeNode node) { DataGridViewRow dataGridViewRow = new DataGridViewRow(); if (node != null && node.Tag is TreeAttributeNodeTag) { TreeAttributeNodeTag treeAttributeNodeTag = (TreeAttributeNodeTag)node.Tag; dataGridViewRow.CreateCells(logicGrid); dataGridViewRow.Cells[0].Value = treeAttributeNodeTag.XpathExpression1; dataGridViewRow.Cells[1].Value = SR.GetString("CF_Equal"); dataGridViewRow.Cells[2].Value = ((!string.IsNullOrEmpty(treeAttributeNodeTag.Value)) ? treeAttributeNodeTag.Value : string.Empty); dataGridViewRow.Cells[3].Value = SR.GetString("CF_None"); dataGridViewRow.Tag = treeAttributeNodeTag; logicGrid.Rows.Add(dataGridViewRow); } else if (node != null && node.Tag is TreeXmlNodeNodeTag) { TreeXmlNodeNodeTag treeXmlNodeNodeTag = (TreeXmlNodeNodeTag)node.Tag; dataGridViewRow.CreateCells(logicGrid); dataGridViewRow.Cells[0].Value = treeXmlNodeNodeTag.XpathExpression0; dataGridViewRow.Cells[1].Value = SR.GetString("CF_Ext"); dataGridViewRow.Cells[2].Value = treeXmlNodeNodeTag.XmlNode.InnerText; dataGridViewRow.Cells[3].Value = SR.GetString("CF_None"); dataGridViewRow.Tag = treeXmlNodeNodeTag; logicGrid.Rows.Add(dataGridViewRow); } if (dataGridViewRow.Cells[1].Value.ToString() == SR.GetString("CF_Ext")) { dataGridViewRow.Cells[2].ReadOnly = true; dataGridViewRow.Cells[2].Style = new DataGridViewCellStyle(); dataGridViewRow.Cells[2].Style.ForeColor = Color.Gray; dataGridViewRow.Cells[3].ReadOnly = true; dataGridViewRow.Cells[3].Style = new DataGridViewCellStyle(); dataGridViewRow.Cells[3].Style.ForeColor = Color.Gray; } }