C# Xamarin表单显示图像问题

C# Xamarin表单显示图像问题,c#,xamarin,xamarin.forms,C#,Xamarin,Xamarin.forms,我使用一个照片选择器让用户选择一个个人资料图片,然后我想显示一个图像视图内的图片。下面的代码对我来说很好,但是我想将图像转换为字节数组,一旦我调用方法进行转换,图像在用户拾取后不会显示。我还尝试调用了try-and-catch之外的方法,但没有成功。 图像被选中(保存在本地存储中),因此唯一的问题是由于某种原因,它没有在视图中显示 async void showMediaPicker() { var res = await MediaP

我使用一个照片选择器让用户选择一个个人资料图片,然后我想显示一个图像视图内的图片。下面的代码对我来说很好,但是我想将图像转换为字节数组,一旦我调用方法进行转换,图像在用户拾取后不会显示。我还尝试调用了try-and-catch之外的方法,但没有成功。 图像被选中(保存在本地存储中),因此唯一的问题是由于某种原因,它没有在视图中显示

  async void showMediaPicker()
            {
                var res = await MediaPicker.PickPhotoAsync();
                try
                {
                    var stream = await res.OpenReadAsync();
                    var finalImage = ImageSource.FromStream(() => stream);
                    myImage.Source = finalImage;
                    imgBytes = ImageSourceToBytes(finalImage);

                }
                catch (Exception e)
                {
                  Console.Write("error" + e.Message) ;
                }

            }

如果要将照片转换为字节数组,可以使用Nuget的插件拾取或拍照。别忘了在android和iOS平台上添加相关权限

await CrossMedia.Current.Initialize();
    
    if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.IsTakePhotoSupported)
    {
        DisplayAlert("No Camera", ":( No camera available.", "OK");
        return;
    }

    var file = await CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions
    {
        SaveToAlbum = true,
        Name = "test.jpg"
    });

    if (file == null)
        return;
然后首先将其转换为,然后再将其转换为字节数组

 Stream stream = file.GetStream();
现在可以得到如下所示的字节数组

var imgDate = GetImageStreamAsBytes(stream);

但是函数关闭流,然后它不会在UI中显示图像。在转换之前显示它。是的,我就是这么做的。。。看看问题中的代码你使用插件了吗?我使用了mediaPicker
var imgDate = GetImageStreamAsBytes(stream);