Sam*_*mes 0 c# xamarin.android xamarin xamarin.forms
Xamarin.Forms 我的问题至少存在于 Android 上。
我有一个使用分组的集合视图。我想让每个 CollectionView 组都可单击。我尝试将 tapGesture 识别器添加到第二个数据模板中的 StackLayout、顶部数据模板中的 Label 和 CollectionView 本身,我还尝试将它们作为点击和命令添加。最后,我在 collectionView 上尝试了 SelectionChanged 。
单击 CollectionView 上的任意位置不会命中 ViewModel 或 View.cs 中的断点
我希望单击一个项目将为 ViewModel 提供某种参数,以便它知道 CollectionView 中的哪个项目被点击
这是我的 XAML,如果有人能看到我犯了什么错误,那就太棒了!谢谢
<CollectionView Grid.Row="1" ItemsSource="{Binding ResponseCollection}" SelectionMode="Single" SelectionChanged="ResponseCollectionView_SelectionChanged" x:Name="ResponseCollectionView" IsGrouped="True" >
<CollectionView.GroupHeaderTemplate>
<DataTemplate >
<Label BackgroundColor="White" Padding="10,10,10,0" Text="{Binding Response}">
</Label>
</DataTemplate>
</CollectionView.GroupHeaderTemplate>
<CollectionView.ItemTemplate>
<DataTemplate>
<ScrollView>
<Grid Padding="10" BackgroundColor="White">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="1"/>
</Grid.RowDefinitions>
<StackLayout Grid.Row="0" Orientation="Horizontal">
<Label TextColor="Red" Text="{Binding Statistic}"/>
<Label TextColor="Red" Text="{Binding Amount}"/>
</StackLayout>
<BoxView Grid.Row="1" BackgroundColor="Gray" HorizontalOptions="FillAndExpand"></BoxView>
</Grid>
</ScrollView>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
Run Code Online (Sandbox Code Playgroud)
使用相对绑定
<StackLayout x:Name="PageView">
<CollectionView>
<CollectionView.ItemTemplate>
<DataTemplate>
<StackLayout>
<StackLayout.GestureRecognizers>
<TapGestureRecognizer Command="{Binding Path=BindingContext.ViewModelCommand, Source={x:Reference PageView}}" />
</StackLayout.GestureRecognizers>
</StackLayout>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</StackLayout>
Run Code Online (Sandbox Code Playgroud)
更新为包含参数:
<TapGestureRecognizer
Command="{Binding Path=BindingContext.ViewModelCommand, Source={x:Reference PageView}}"
CommandParameter="{Binding .}"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4134 次 |
| 最近记录: |