【问题标题】:Error in code: Loading of XML document代码错误:加载 XML 文档
【发布时间】:2009-03-03 08:36:13
【问题描述】:

这是参考之前提出的问题。这是完整的代码,它给了我一个错误:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Xml;
using System.Text;
using System.Windows.Forms;
using System.Collections;
using System.IO;

namespace LoadXMLtreeDisplay
{
    public partial class TreeDisplay : Form
    {
        public string Filename
        {
            get { return filename; }
        }
        protected string filename;
        public TreeDisplay()
        {
            InitializeComponent();
            this.Text = "Tree View of XML File";//Form Title.
        }
       private void treeDocLoadMethod(string nameofFile)
        {
                XmlDocument xdoc = new XmlDocument();
                xdoc.Load(nameofFile);
                this.treeView1.Nodes.Clear();
                this.treeView1.Nodes.Add(new TreeNode(xdoc.DocumentElement.Name));
                TreeNode tNodeObj = new TreeNode();
                tNodeObj = this.treeView1.Nodes[0];
                XmlNode xNode = xdoc.DocumentElement;
                AddingNodesToTree(tNodeObj, xNode);
                treeView1.Nodes[0].Expand();
                treeView1.CollapseAll();
        }//treeDocLoadMethod

        private void AddingNodesToTree(refXmlNode xnode,TreeNode tnode)
        {

            TreeNode subNode = tnode.Add(xnode.Name);
            subNode.Tag = xnode;
            foreach (XmlNode subElement in xnode.ChildNodes)
            {
                AddingNodesToTree(ref subElement, ref subNode);
            }       

        } 
        private void treeView1_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e)
        { listBox1.Items.Clear();
            TreeNode currentNode = e.Node;
            XmlElement currentElement = (XmlElement)currentNode.Tag;
            XmlAttributeCollection attCol = currentElement.Attributes;
            foreach (XmlAttribute xmlatt in attCol)
            {
                listBox1.Items.Show(xmlatt);
            }
         }

//Rest of the code is for winform display(various buttons and boxes)
     }
}

编译后出现错误:

预期的类、委托、枚举、 接口,或结构类型或 命名空间定义,或文件结尾 预计

请您告诉我可能的错误来源是什么以及如何纠正它?我是 C# 的新手

【问题讨论】:

  • 当您指定有错误时,请说出错误发生在哪里

标签: c# xml winforms


【解决方案1】:

第一行缺少一个空格;应该是“ref XmlNode”而不是“refXmlNode”

编辑:不是第一行(不再);但那一行写着:

private void AddingNodesToTree(refXmlNode xnode,TreeNode tnode)

【讨论】:

  • 你还是不说在哪里...帮助我们帮助你。
  • 嘿乔恩,错误来了,因此我无法获得所需的输出。我的最终目标是将 Xml 文档加载到 C# 程序中。在 Winform 中将其显示为树视图。当我单击任何节点,该节点的属性显示在同一个 Winform 的列表框中。你能帮我解决这个问题吗?
  • 我更正了代码,最后经过一些更正后,我得到的错误是“System.Windows.Forms.ListBox.ObjectCollection”在 listBox1 行中不包含“显示”的定义。 Items.Show(xmlatt);这个怎么去掉?
  • "Errors are Coming" - 您从编译器收到错误消息,是吗?它必须在错误之前打印一个数字 - 该数字是出现错误的行号。请告诉我们行号是多少?
  • 你可能想替换 listBox1.Items.Show(xmlatt);与 listBox1.Items.Add(xmlatt);但这有点傻......我认为你应该打电话给某人帮助你一对一学习,而 StackOverflow 不是这样的论坛。
猜你喜欢
  • 2021-09-06
  • 1970-01-01
  • 2011-08-04
  • 2011-03-22
  • 2016-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多