2017-02-15 47 views
0

我想将一些XML子节点加载到特定的文本框中,但只能找到如何通过创建XmlDocument子节点的XMLNodeList并将它们作为列表迭代并通过索引调用它们的示例。有没有办法通过标签名称来获取XMLDocument中的特定子节点?将XMLDocument子节点加载到文本框?

//my xml file 
<?xml version="1.0" encoding="UTF-8"?> 
<Textboxes> 
    <FirstName>John</FirstName> 
    <LastName>Smith</LastName> 
</Textboxes> 

    //c# method to load textboxes by child node names 
    private void LoadTextboxes() 
    { 
     XmlDocument doc = new XmlDocument(); 
     doc.Load(Application.StartupPath + "\\Saved.xml"); 

     txtFirstName.Text = doc.??? // get <FirstName> 
     txtLastName.Text = doc.??? // get <LastName> 
    } 
+0

XPath过滤? https://msdn.microsoft.com/en-us/library/ms256086(v=vs.110).aspx –

回答

1

给你提供的样品,这样的事情应该工作:

private static void LoadTextboxes() 
{ 
    XmlDocument doc = new XmlDocument(); 
    doc.Load(Application.StartupPath + @"\Saved.xml"); 
    txtFirstName.Text = doc.LastChild.SelectSingleNode("FirstName").LastChild.Value; // get <FirstName> 
    txtLastName.Text = doc.LastChild.SelectSingleNode("LastName").LastChild.Value; // get <LastName> 
}