Xamarin Forms - 在点击手势识别器上添加调用对象作为参数
Xamarin Forms - adding the calling object as a parameter on a tap gesture recognizer
将下面 XAML 中的图像添加为命令参数的正确语法是什么?
<ffimageloading:CachedImage Source="{Binding Source}" Aspect="AspectFit" CacheType="Memory" Opacity="2" x:Name="smallImage" >
<Image.GestureRecognizers>
<TapGestureRecognizer
Command="{Binding Path=BindingContext.SetImageCommand, Source={x:Reference this}}"
CommandParameter="{Binding smallImage}" />
</Image.GestureRecognizers>
</ffimageloading:CachedImage>
及其绑定的命令代码(CustomCachedImage 只是 class 从缓存图像派生的,添加了 imageName 字段)
调用图像将有多个实例,因为它在数据模板中作为图像滑块的一部分,所以我不能只通过名称获取控件,我必须确保它是调用控件通过。
public ICommand SetImageCommand
{
get
{
return new Command<CustomCachedImage>((_image) =>
{
string imgName = _image.ImageName;
SetImg(imgName);
});
}
}
将“{Binding smallImage}”更改为“{Binding .}”,我得到了我需要的东西
将下面 XAML 中的图像添加为命令参数的正确语法是什么?
<ffimageloading:CachedImage Source="{Binding Source}" Aspect="AspectFit" CacheType="Memory" Opacity="2" x:Name="smallImage" >
<Image.GestureRecognizers>
<TapGestureRecognizer
Command="{Binding Path=BindingContext.SetImageCommand, Source={x:Reference this}}"
CommandParameter="{Binding smallImage}" />
</Image.GestureRecognizers>
</ffimageloading:CachedImage>
及其绑定的命令代码(CustomCachedImage 只是 class 从缓存图像派生的,添加了 imageName 字段)
调用图像将有多个实例,因为它在数据模板中作为图像滑块的一部分,所以我不能只通过名称获取控件,我必须确保它是调用控件通过。
public ICommand SetImageCommand
{
get
{
return new Command<CustomCachedImage>((_image) =>
{
string imgName = _image.ImageName;
SetImg(imgName);
});
}
}
将“{Binding smallImage}”更改为“{Binding .}”,我得到了我需要的东西