xml以这种方式解析,但在MainViewModel

问题描述:

我正在使用xml解析来获取数据的应用程序。在网上搜索了几次之后,终于找到了适合我需要的代码。作为一个说明,我把它放在MainPage.xaml.cs中xml以这种方式解析,但在MainViewModel

 try 
     { 
      if (e.Error != null) 
      { 
       MessageBox.Show(e.Error.ToString(), "Error", MessageBoxButton.OK); 
      } 

      XElement profiler = XElement.Parse(e.Result); 

      listBox2.ItemsSource = from developers in profiler.Descendants("status") 
            select new ItemViewModel 
            { 
             Tweet = developers.Element("text").Value, 
             TweetImage = developers.Element("user").Element("profile_image_url").Value, 
             TweetSender = developers.Element("user").Element("screen_name").Value, 
            }; 
     } 

     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message.ToString() + "\nThis may caused by your IP has made over 150 request in less than 1 hour. Try checking back in the next hour or try restarting your phone."); 
      return; 
     } 

,但是,当它进入详细信息页面,它也会唱成一个例外。我希望将代码放置在WebClient下载完成事件处理程序的MainViewModel类中。我应该编辑哪一行以便以这种方式进行xml解析,但在MainViewModel中。任何答案将不胜感激

谢谢。

如果你想在你的MainViewModel中实现这个功能,首先你需要创建一个包含Teet,TweetImage等的模型类。然后你需要将你的解析结果放到一个“List/Observable”集合中,然后绑定通过xaml收集到您的列表框中。这将解决您的问题。

+0

我已经做了fileds,现在,我应该编辑什么? – user1072976 2012-02-15 11:17:26

+0

我应该改变这一行: listBox2.ItemsSource =来自开发人员在profiler.Descendants(“状态”) – user1072976 2012-02-15 11:20:40

+0

而不是listBox2.ItemsSource你需要给List ParsedList ..并且将这个解析列表绑定到你的ur UI – 2012-02-15 11:46:51