2012-08-14 3 views
1

웹 사이트의 API를 사용하는 응용 프로그램이 있습니다.windows phone 7 xml 응답 처리

<xml> 
    <id>48</id> 
    <name>Nuno Horta</name> 
    <user_lvl>2</user_lvl> 
</xml> 

내 코드는이 하나입니다 :

client.ExecuteAsync(request, response => { 
          var value = response.Content; 
          XElement loadedData = XElement.Parse(value); 
          var data = from query in loadedData.Descendants("xml") 
             select new 
             { 
              id = (int)query.Element("id"), 
              name = (string)query.Element("name"), 
             }; 
          listBox.ItemsSource = data; 
}); 

내가 그래서 내가 보여 주려 한 응용 프로그램 설정에 그들을 저장하는 두 값, ID와 이름을 얻으려면 그것은이 XML을 반환 여기에 : 내가 요청 없이 성공을 위해 restsharp을 사용하고있는 방법 ... 그 값을 얻을 수있는 어떤 아이디어에 의해

<TextBlock Text="XML Data:"/> 
       <ListBox x:Name="listBox"> 
        <ListBox.ItemTemplate> 
         <DataTemplate> 
          <StackPanel Margin="10" > 
           <TextBlock Text="{Binding name}"/> 
           <TextBlock Text="{Binding id}"/> 
          </StackPanel> 
         </DataTemplate> 
        </ListBox.ItemTemplate> 
        </ListBox> 

? 다른 3 api 메서드 요청을 할 필요가있다. 감사!

+0

그리고 무슨 일이되어 있어야한다? "데이터"의 유형은 무엇입니까? –

+0

그것은 아무것도 일어나지 않습니다 .. 나는 그들과 함께 뭔가를 할 두 값 (ID와 이름)을 기대하고있었습니다. 데이터를 그냥 databinding에 var 그래서 나는 textblocks에 값을 표시 할 수 있습니다. – nhenrique

답변

0

항목 속성에 바인딩되므로 경로를 사용하려면 데이터 바인딩을 수정해야합니다.

그래서 당신의 XAML 바인딩 경로에 대한

<TextBlock Text="XML Data:"/> 
      <ListBox x:Name="listBox"> 
       <ListBox.ItemTemplate> 
        <DataTemplate> 
         <StackPanel Margin="10" > 
          <TextBlock Text="{Binding Path=name}"/> 
          <TextBlock Text="{Binding Path=id}"/> 
         </StackPanel> 
        </DataTemplate> 
       </ListBox.ItemTemplate> 
       </ListBox> 

자세한 내용은 here

+0

괜찮습니다. 작동했습니다;) – nhenrique