使用 Xamarin.Forms 和 Prism 的图像点击事件
Image tap event with Xamarin.Forms and Prism
我正在使用 Xamarin 开发跨平台应用程序。用于 MVVM 的框架是 Prism。
在我的用户界面中有一个图像,我需要它在被点击时引发一个动作。
我尝试使用 TapGestureRecognizer,但它不起作用。错误在哪里?还有另一种方法吗?
XAML:
...<Frame Grid.Row="0" Grid.Column="0" OutlineColor="Black" Padding="5">
<Image x:Name="imgSynch" Source="synch.png" >
<Image.GestureRecognizers>
<TapGestureRecognizer Command="Binding TapCommand" />
</Image.GestureRecognizers>
</Image>
</Frame>...
ViewModel:
... ICommand tapCommand;
public ICommand TapCommand
{
get { return tapCommand; }
}
public MainPageViewModel()
{
var tapImageSynch = new TapGestureRecognizer();
tapCommand = new Command(Synch);
void Synch()
{
_pageDialogService.DisplayAlertAsync("Title", "It works!", "OK");
} ...
谢谢!
您的代码中存在语法错误:
Command="Binding TapCommand"
应该是:
Command="{Binding TapCommand}"
如果您的 Binding 被指定为 MainPageViewMode 的一个实例
我正在使用 Xamarin 开发跨平台应用程序。用于 MVVM 的框架是 Prism。 在我的用户界面中有一个图像,我需要它在被点击时引发一个动作。 我尝试使用 TapGestureRecognizer,但它不起作用。错误在哪里?还有另一种方法吗?
XAML:
...<Frame Grid.Row="0" Grid.Column="0" OutlineColor="Black" Padding="5">
<Image x:Name="imgSynch" Source="synch.png" >
<Image.GestureRecognizers>
<TapGestureRecognizer Command="Binding TapCommand" />
</Image.GestureRecognizers>
</Image>
</Frame>...
ViewModel:
... ICommand tapCommand;
public ICommand TapCommand
{
get { return tapCommand; }
}
public MainPageViewModel()
{
var tapImageSynch = new TapGestureRecognizer();
tapCommand = new Command(Synch);
void Synch()
{
_pageDialogService.DisplayAlertAsync("Title", "It works!", "OK");
} ...
谢谢!
您的代码中存在语法错误:
Command="Binding TapCommand"
应该是:
Command="{Binding TapCommand}"
如果您的 Binding 被指定为 MainPageViewMode 的一个实例