我有一组对象要绑定到我的Xaml(目前使用GridView)。我不知道GridView是否是我想要实现的最佳工具。
这大致是我目前的DataTemplate:
我需要在Grid1上点击/点击触发器。但是当我将此模板与GridView一起使用时,ItemClick事件将在完整模板上触发 - 当然这是正确的。如何在Grid1上设置click事件?我可以在我的DataTemplate声明中添加此事件吗?
这基本上是我的GridView的xaml:
<GridView x:Name="RoomsGridView"
VerticalAlignment="Top"
ItemsSource="{Binding Rooms}"
ItemTemplate="{StaticResource RoomTemplate}"
SelectionMode="None"
IsSwipeEnabled="false"
IsItemClickEnabled="True"
ItemClick="RoomsGridView_ItemClick" Padding="0">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
</GridView>
修改:我找到了this sample,但这似乎只适用于按钮!?
答案 0 :(得分:1)
在上面发布的代码中,您已告诉GridView
通过IsItemClickEnabled="True"
捕获项目点击次数。如果您希望能够点击DataTemplate
内的元素,则无法启用该选项。
我建议你禁用IsItemClickEnabled
,而是在Grid1中添加一个点击处理程序。更好的方法是使用具有自定义样式的按钮替换Grid1
。这将进一步允许您将按钮绑定到您可以从视图模型控制的命令。