首页> C#>如何读取图像源或图像名称在Xamarin.forms?

我正在处理Xamarin表单,现在在该图像的水龙头上使用TapGestureRecognizer在图像中,我需要在c#中获取图像的来源.我怎么得到的?我这样做的原因是,Xamarin表单中的单选按钮不可用,点击图像时,我将检查图像的来源(如果来源已选中),则需要将来源更改为未选中,反之亦然.

这是我的XAML代码

   <Image  Scale="0.7"  HorizontalOptions="Start" x:Name="radioButton" Source="unchecked.png">
       <Image.GestureRecognizers>
           <TapGestureRecognizer Tapped="radioButton_Clicked"> 
           </TapGestureRecognizer>
       </Image.GestureRecognizers>
   </Image>

这是我的C#代码

    private void radioButton_Clicked(object sender, EventArgs e)
    {
        var imageSource = "";//get image source here
        if (imageSource == "Checked.png")
        {
            radioButton.Source = "Unchecked.png";
        }
        else
        {
            radioButton.Source = "Checked.png";
        }
    }

解决方法:

您可以在radioButton_Clicked动作上实现这样的效果

 private void radioButton_Clicked(object sender, EventArgs e)
{
    var imageSource = (Image)sender;//get image source here
    var selectedImage = imageSource.Source as FileImageSource;

    if (selectedImage.File == "Checked.png")
    {
        radioButton.Source = "Unchecked.png";
    }
    else
    {
        radioButton.Source = "Checked.png";
    }
}

或者您可以使用自定义插件以获得支持复选框,请参阅此
https://github.com/XLabs/Xamarin-Forms-Labs

上一篇:Xamarin Android的OkHttp绑定库抛出错误


下一篇:android-AppleScript“执行shell脚本”忽略PATH变量