使用组合框获取XML元素

时间:2013-12-05 20:32:13

标签: c# linq-to-xml

我有xml,它由类别元素组成,每个类别都有自己的元素,例如:如果汽车是类别,汽车将具有制造,模型,速度等元素,如果书籍是类别,书籍将具有像作者,章节分类的元素。

我有一个组合框,其中列出了所有类别。选择类别后,我想将该类别的属性/元素存储到变量中。我调试了,但这没有发生。

我是一名新的C#开发人员,希望有人可以看一下代码片段,并指出我的方向是我做错了。

private void cmbBoxCatagory_SelectedIndexChanged(object sender, EventArgs e)
{   String selectedCatagory = cmbBoxCatagory.Text;
    XElement xelement = XElement.Load("a location");
    IEnumerable<XElement> elements = xelement.Elements();
      var category =
      from c in elements
      where (string)c.Element("categoryName").Value == selectedCatagory
      select c;
    IEnumerable<XElement> dataItems = category.Elements();
}

1 个答案:

答案 0 :(得分:0)

private void cmbBoxCatagory_SelectedIndexChanged(object sender, EventArgs e)
{   var selectedCatagory = ((ComboBox)sender).SelectedItem;
    XElement xelement = XElement.Load("a location");
    IEnumerable<XElement> elements = xelement.Elements();
      var category =
      from c in elements
      where (string)c.Element("categoryName").Value == (string)selectedCatagory.Value
      select c;
    IEnumerable<XElement> dataItems = category.Elements();
}