我在Xamarin中具有此列表视图:
<ListView x:Name="LocationsListView"
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid Margin="10,10,10,10" Padding="5,5,5,5">
<StackLayout Grid.Column="0">
<Label x:Name="lblAirport" HorizontalOptions="Center" Text="{Binding AirportICAO}" />
<Button x:Name="btnConfirmFuel" IsVisible="{Binding AirportFuelSelected}" Clicked="BtnConfirmFuel_Clicked" CommandParameter="{Binding .}" />
</StackLayout>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我想在列表中获得与单击按钮的行相关的项目。 现在,我可以通过Clicked object sender参数看到要获取的内容:
但是当我尝试获取实际的CommandParameter时,我没有将其作为选项。我有哪些选择,如何检测Xamarin Listview中从哪个项目单击了按钮?
答案 0 :(得分:2)
只需投射发件人并获取其CommandParameter
var item = (Model)((Button)sender).CommandParameter;