sonutool Ответов: 2

Данные не отображаются в мобильном приложении, используя ListView с помощью приложения Xamarin через API


{"$id":"1","Version":"1.0.0","dateTime":"2020/07/31 09:03:05","StatusCode":1,"ErrorMessage":"Success","Result":{"$id":"2","getpartnumberover":[{"$id":"3","partnumber":"14312-054-1","productname":"fill-line-hose-assy"}]}}


Пожалуйста, смотрите выше json

код XAML

<ListView x:Name="MyListView" ItemsSource="{Binding MyListView}">
           <ListView.ItemTemplate>
               <DataTemplate>
                   <ViewCell>

                       <StackLayout Orientation="Horizontal" Margin="5" HeightRequest="90">

                           <Label Text="{Binding partnumber}" TextColor="Black"></Label>


                       </StackLayout>
                   </ViewCell>

               </DataTemplate>
           </ListView.ItemTemplate>
       </ListView>



Данные не привязываются, и код c# работает нормально, но мобильное приложение показывает пустую страницу

Что я уже пробовал:

using (var httpClient = new HttpClient())
            {
                httpClient.DefaultRequestHeaders.TryAddWithoutValidation("Accept", "application/json");
                httpClient.DefaultRequestHeaders.TryAddWithoutValidation("User-Agent", "Mozilla/5.0 (Windows NT 6.2; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0");


                var response = httpClient.GetAsync("APi url").Result;
                string stud = response.Content.ReadAsStringAsync().Result;
                JToken m = JToken.Parse(stud);
                JArray men = (JArray)m.SelectToken("Result.over");
                foreach (var zaq in men)
                {
                    MyListView.ItemsSource = zaq.SelectToken("partnumber").ToString();
                }
            }

2 Ответов

Рейтинг:
2

Gerry Schmitz

.ItemsSource принимает "список" (т. е. коллекцию), а не (единственную) "строку".

Источники Данных ListView - Xamarin | Microsoft Docs[^]


sonutool

Я пробовал это, но это не работает @gerry

Рейтинг:
0

sonutool

Я должен добавить класс list из класса json, а затем его работу