首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WP7 -解析XML数据

WP7 -解析XML数据
EN

Stack Overflow用户
提问于 2012-01-31 08:12:39
回答 1查看 718关注 0票数 3

我一直使用简单的xml结构和简单的xaml绑定。现在,在尝试一些复杂的东西时,我有点困惑。我正在阅读这个WP7 How to parse the XML?问题和它的答案,但我不能理解数据显示部分。

我有类似如下的XML数据:

代码语言:javascript
复制
<?xml version="1.0"?>
<top>
    <value name="Finals">
        <country home="sweden" away="italy" venue="aaa"/>
    </value>
    <value name="Semi-finals">
        <country home="Germany" away="sweden" venue="ccc"/>
        <country home="france" away="italy" venue="ddd"/>
    </value>
</top>

我想看到的结果是:

代码语言:javascript
复制
Finals
- Sweden - Italy in AAA

Semi-finals
- Germany - France in ccc
- France - Sweden in ddd

有没有办法用Xaml绑定的东西来做到这一点。如果你有任何关于这方面的WP7教程链接,我将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-31 14:08:07

WPF有一个XML binding API,但是Silverlight for WP7没有。我将使用Linq to XML来创建您想要的字符串。

像这样的东西应该行得通。

代码语言:javascript
复制
NL = System.Environment.NewLine;

doc = XDocument.Parse(xml);
StringBuilder output = new StringBuilder();

var rounds = doc.Descendants("value");
foreach(XElement round in rounds)
{
  builder.Append(round.Attribute("value").Value + NL);
  foreach(XElement country in round.Elements())
  {
    builder.Append(country.Attribute("home").Value);
    builder.Append(" - ");
    builder.Append(country.Attribute("away").Value);
    builder.Append(" in ");
    builder.Append(country.Attribute("venue").Value);
    builder.Append(NL);
  }
}

有关更多详细信息,请参阅MSDN documentation for Linq to XML

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9072692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档