Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将Xml元素和内容读/写到listBox对象_C#_Xml_Forms - Fatal编程技术网

C# 将Xml元素和内容读/写到listBox对象

C# 将Xml元素和内容读/写到listBox对象,c#,xml,forms,C#,Xml,Forms,这是一个Xml文件,我想加载并获取元素中的内容,而不需要标记来读取分配给LogRecord的内容,以便添加到listHoursLog listBox。现在,我想要的是LogRecord=2/28/2014 8:31 PM-12:00 AM Total Time:00:00:01中写的内容,完全相同,不解析为元素等。就像将HoursLog作为字符串列出一样,这样我可以进一步使用它。对于每个LogRecord元素,我需要将它们全部加载到各自独立的行上的列表框中 <?xml version="1

这是一个Xml文件,我想加载并获取元素中的内容,而不需要标记来读取分配给LogRecord的内容,以便添加到listHoursLog listBox。现在,我想要的是LogRecord=2/28/2014 8:31 PM-12:00 AM Total Time:00:00:01中写的内容,完全相同,不解析为元素等。就像将HoursLog作为字符串列出一样,这样我可以进一步使用它。对于每个LogRecord元素,我需要将它们全部加载到各自独立的行上的列表框中

<?xml version="1.0" encoding="utf-8"?>
    <!--Save Log from previous use.-->
    <!--fName lName| 2/28/2014 @ 8:31 PM-->
    <root>
      <LogRecord LogRecord="2/28/2014 8:31 PM to 12:00 AM Total Time: 00:00:01" />
    </root>  
一些代码我一直试图把我在互联网上找到的东西拼凑起来。我一直在寻找代码,不读取内部元素的内容,但元素本身,这是无用的,我需要

   var logList = XDocument.Load(XMLConfigFile).Root.Elements(); //XmlConfigFile is the source of the Xml data
      var contents= from element in logList.Descendants("element")
                                  select new {
                                      attribute = element.Attribute("LogRecord").Value       //Display contents of element <LogRecord>
                              };

                        listHoursLog.Items.Add(contents);
您可以这样尝试:

var logList = XDocument.Load(XMLConfigFile).Root.Elements(); //XmlConfigFile is the source of the Xml data
var contents= from element in logList
              select (string)element.Attribute("LogRecord");
foreach(var content in contents)
{
    listHoursLog.Items.Add(content);
}

更新了我的答案以选择字符串而不是匿名对象新建{..}在我使用此代码时,system.Linq.Enumerable+WhereSelectIterator'[system.Xml.Linq.XElement,f_anonymous Type 0'1[system.string]]会准确打印此内容。。。。。。不是elementcheck更新答案中的内容。我们需要使用foreach将contents中的每个项添加到listbox。顺便问一下,你的应用程序是什么平台的,ASP.NET、winform、WPF等等?它是在C、windows窗体应用程序中