如何获取ListView单元格的数据

时间:2017-05-23 08:21:26

标签: android xaml xamarin xamarin.forms portable-class-library

我们的itemSource来自一个json数据,我们反序列化它,所以我们可以把它放在Xaml列表视图中,我无法得到被挖掘的单元格的值。

这是我的.cs

List<Debtor> ro = JsonConvert.DeserializeObject<List<Debtor>>(filteredResult2);
//UPDATE LISTVIEW
CustListView.ItemsSource = ro;

CustListView.ItemSelected += async (sender, e) =>
       {
           await DisplayAlert("Selected", e.SelectedItem.ToString() + " was selected.", "OK");
           // await Navigation.PushAsync(new SalesHeaderPage());
       };

这是我的.xaml

 <ListView x:Name="CustListView">
 <ListView.ItemTemplate>
   <DataTemplate>
     <ViewCell >
       <StackLayout Orientation="Vertical" Padding="8,0,8,0">
         <Label Text="{Binding debtor_name}" TextColor="#000" FontSize="14" LineBreakMode="TailTruncation" />

       </StackLayout>
     </ViewCell>
   </DataTemplate>
 </ListView.ItemTemplate>

enter image description here

2 个答案:

答案 0 :(得分:1)

同时添加(ListView)sender).SelectedItem = null,因为如果您再次点按相同的项目则无法工作。因此您需要清除所选项目。

if (e.SelectedItem == null) return; var tappedItem = (Debtor)e.SelectedItem; ((ListView)sender).SelectedItem = null;

答案 1 :(得分:0)

你必须施展它

类似

((Debtor)e.SelectedItem).debtor_name;