定位到 <Schedule>,取所有的子元素遍历 XmlNodeList basenode = xmlDoc.GetElementsByTagName("Schedule");
if (basenode.Count == 0)
return false;
foreach (XmlNode item in basenode)
{
if (basenode.Count == 0)
return false;
foreach (XmlNode item in basenode)
{
XmlDocument doc = new XmlDocument();
doc.Load("11.xml");
XmlNode node = doc.SelectSingleNode("ShowList");
XmlNodeList list = node.SelectNodes("Movie");
foreach (XmlNode item in list)
{
XmlNode Schedule = item.SelectSingleNode("Schedule");
XmlNodeList ItemList = Schedule.SelectNodes("Item");
foreach (XmlNode info in ItemList)
{
string text = info.InnerText;
}
}
XmlDocument xm = new XmlDocument();
int u = 1;
private void 获取新列表ToolStripMenuItem_Click(object sender, EventArgs e)//获取新信息
{
treeView1.Nodes.Clear();
xm.Load("ShowList.xml");
XmlNodeList movies = xm.SelectNodes("/ShowList/Movie/Name");
foreach (XmlNode item in movies)
{
TreeNode t = new TreeNode(item.InnerText);
XmlNodeList cc = xm.SelectNodes("/ShowList/Movie["+u+"]/Schedule/Item");
foreach (XmlNode itemw in cc)
{
TreeNode b = new TreeNode(itemw.InnerText);
b.Tag = u;
t.Nodes.Add(b);
}
treeView1.Nodes.Add(t);
u++;
}
}
var query = from ele in XElement.Load("1.xml").Elements("Movie")
let item = ele.Element("Schedule").Elements("Item")
select item;
foreach (var item in query)
{
foreach (var p in item)
{
Console.WriteLine(p.Value);
}
}
Console.Read();我感觉也很不整洁。应该还有更简洁的写法