2
<root>
    <Bathing>
        <Id>San100</Id>
        <name>Santoor</name>
        <AvailProducts>30</AvailProducts>
        <Cost>20.00</Cost>
    </Bathing>
    <Bathing>
        <Id>Det123</Id>
        <name>Dettol</name>
        <AvailProducts>30</AvailProducts>
        <Cost>15.00</Cost>
    </Bathing>
    <Bathing>
        <Id>Rex123</Id>
        <name>Rexona</name>
        <AvailProducts>30</AvailProducts>
        <Cost>16.00</Cost>
    </Bathing>
</root>

我是 C# 和 XML 的新手。这里我使用 XML 作为数据表。

如何仅将 Name 元素插入到我的ComboBox?

4

3 回答 3

1

使用 LINQ2XML ..它很酷

使用System.Xml.Linq

XElement doc=XElement.Load("yourXML.xml"); 
var yourList=doc.Descendants("Bathing").Select(x=>x.Element("name").Value);

yourList 现在包含所有名称

foreach (var name in yourList )
        {
            comboBox1.Items.Add(name);
        }
于 2012-10-05T06:00:03.400 回答
1

创建一个数据集,然后通过数据集读取 XML 文件,然后将组合框绑定到数据集。将显示成员设置为“名称”。

string myXMLfile = @"C:\MySchema.xml";
    DataSet ds = new DataSet();
    // Create new FileStream with which to read the schema.
    System.IO.FileStream fsReadXml = new System.IO.FileStream 
        (myXMLfile, System.IO.FileMode.Open);

        ds.ReadXml(fsReadXml);
        combobox1.DataSource = ds;
        combobox1.Displaymember="name";       
于 2012-10-05T06:37:00.903 回答
0
BindingSource bs=new BindingSource;    
DataTable dt=new DataTable;    
bs.DataSource=dt;    
Combobox1.Displaymember="name";    
于 2012-10-05T06:05:21.480 回答