我在Windows Phone开发中遇到了这个数据绑定问题。在此代码中找不到错误。但我无法创建成功的数据上下文。
public void storeData()
{
Uri uri = new Uri("http://api.openweathermap.org/data/2.5/weather?q="+ City.city + "&units=metric&mode=xml", UriKind.RelativeOrAbsolute);
var client = new WebClient();
client.DownloadStringCompleted += (sender, e) =>
{
string xml = e.Result.ToString();
StringReader stream = new StringReader(xml);
XmlReader reader = XmlReader.Create(stream);
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element && reader.Name == "temperature")
{
temp = reader.GetAttribute(0).ToString();
}
else if (reader.NodeType == XmlNodeType.Element && reader.Name == "weather")
{
condition = reader.GetAttribute(1).ToString();
}
}
weather = new Weather {
CityName = City.city,
Temperature = temp,
Condition = condition
};
DataContext = weather;
};
client.DownloadStringAsync(uri);
}