【问题标题】:How to enable/disable ffimageloading transformations in xaml/mvvm? [Xamarin forms]如何在 xaml/mvvm 中启用/禁用 ffimageloading 转换? [Xamarin 形式]
【发布时间】:2018-09-23 19:37:56
【问题描述】:

我在列表视图中有图像,要开始它,我将它们全部灰度化。

<ffimageloading:CachedImage Source="{Binding Image}" x:Name = "Images">
       <ffimageloading:CachedImage.Transformations  >                     
            <fftransformations:GrayscaleTransformation/>
            <fftransformations:CircleTransformation/>
      </ffimageloading:CachedImage.Transformations>
 </ffimageloading:CachedImage>

<Button Command="{Binding ImageClick}" CommandParameter="{x:Reference Images}" BorderRadius="7" />

在我的 mainviewmodel 中,我有一个命令。

this.ImageClick = new Command(ClickedEvent);

在这里我知道点击了哪个图像,我现在如何禁用该特定图像的灰度?不禁用循环变换。

void ClickedEvent (object sender)
{
    var clickedImage = sender as CachedImage;
    var rowData = clickedImage.BindingContext as MyClass;
    // Now i am unsure on how to proceed
}

public class MyClass
{
     public string Image {get;set;}
     public bool GrayScaleVisibility {get;set;}
}

【问题讨论】:

    标签: c# xamarin xamarin.forms


    【解决方案1】:

    您可以使用转换绑定,并根据需要更新它们。

    例子:

            <ffimageloading:CachedImage HorizontalOptions="Center" VerticalOptions="Center"
                LoadingPlaceholder="loading.png" ErrorPlaceholder="error.png" DownsampleToViewSize="true"
                Aspect="AspectFit" HeightRequest="400" WidthRequest="400"
                Transformations="{Binding Transformations}" Source="{Binding ImageUrl}">
            </ffimageloading:CachedImage>
    

    以及文档中的 ViewModel- https://github.com/luberda-molinet/FFImageLoading/blob/master/samples/ImageLoading.Forms.Sample/Shared/Pages/Transformations/TransformationsSelectorPageModel.cs

    【讨论】:

      猜你喜欢
      • 2019-09-21
      • 2018-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-28
      • 1970-01-01
      • 2018-03-06
      • 1970-01-01
      相关资源
      最近更新 更多