【发布时间】:2021-01-15 00:43:46
【问题描述】:
我有一个 Listview 组标题,其中包含一个图像按钮 - imgAdd - 它不响应点击手势。我已经尝试了目前在这个主题上可用的各种方法,但似乎没有任何效果.. 对此有帮助吗?我希望它触发绑定视图模型中的方法以导航到页面 - 没什么复杂的。
code
<ListView.GroupHeaderTemplate
SeparatorVisibility="Default"><DataTemplate>
<ViewCell Height="110" >
<Grid VerticalOptions="Start" >
<Grid.RowDefinitions>
<RowDefinition Height="70"/>
</Grid.RowDefinitions>
<!--Headers-->
<StackLayout VerticalOptions="Fill" BackgroundColor="White"
HeightRequest="5" > <!--150-->
<!--
<Frame OutlineColor="#FFB607" HasShadow="False" Padding="0,0,0,0"
IsClippedToBounds="False" CornerRadius="0" Margin="0,0,0,0">
-->
<Label
Grid.Row="0"
HeightRequest="70"
FontAttributes="None"
Margin="0,0,0,20"
FontSize="18"
Text="{Binding CategoryName}"
Padding="20,5,0,10"
TextColor="White"
BackgroundColor="#FFB607"
VerticalTextAlignment="Center"
FontFamily="Hiragino Sans"
xmlns:local="project.Controls"
MinimumHeightRequest="70"
x:Name="lblTitle"
/>
<Image
Grid.Row="3"
Grid.Column="4"
HeightRequest="30"
WidthRequest="30"
HorizontalOptions="EndAndExpand"
x:Name="imgAdd"
Source="btnAdd.png"
Margin="0,-20,20,0"
>
<Image.GestureRecognizers>
<TapGestureRecognizer Command="{Binding Source={StaticResource myHomePageViewModel}, Path=ListOnTapCommand}"
/>
</Image.GestureRecognizers>
</Image>
</StackLayout>
<Image x:Name="ImgA" Source="{Binding StateIcon}" Margin="0,0,25,0"
HeightRequest="20" WidthRequest="20" HorizontalOptions="End"/>
<Grid.GestureRecognizers>
<TapGestureRecognizer Command="{Binding Source={x:Reference homePage},
Path=BindingContext.RefreshLogsCommand}"
NumberOfTapsRequired="1" CommandParameter="{Binding .}"/>
</Grid.GestureRecognizers>
</Grid>
<!-- </Frame>-->
</ViewCell>
code
型号
public ICommand ListOnTapCommand { get; set; }
public myHomePageViewModel()
{
ListOnTapCommand = new Command(ListOnTap)
}
private void ListOnTap()
{
// do something
App.NavigationPage.Navigation.PushAsync(new search());
}
private void ListOnTap()
{
// do something
App.NavigationPage.Navigation.PushAsync(new search());
}
【问题讨论】:
-
嗨,
myHomePageViewModel是否是另一个与ListView的ItemSource不同的ViewModel?你可以分享ContentPage.cs的代码和绑定的ViewModel。
标签: image listview xamarin button gesture