我正在使用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>...
视图模型:
... 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");
} ...
谢谢!
答案 0 :(得分:4)
您的代码中出现语法错误:
Command="Binding TapCommand"
应该是:
Command="{Binding TapCommand}"
如果您的Binding被指定为MainPageViewMode的实例