我正在使用Xam.Plugin.FilePicker在Xamarin.Forms应用程序中选择文件。 (我正在使用PCL项目,并添加了对所有项目的引用。)
这是我用来呼叫事件的按钮:
<Button Text="Select" Clicked="Upload_Button_Clicked"/>
这是我的点击处理程序:
private async void Upload_Button_Clicked(object sender, EventArgs e)
{
FileData fileData = new FileData();
fileData = await CrossFilePicker.Current.PickFile();
if(fileData != null)
{
byte[] data = fileData.DataArray;
current_filename.Text = fileData.FileName;
}
}
它会打开文件浏览器,并且在选择文件后,await方法不会完成。我的意思是我将断点放在这一行之后
fileData = await CrossFilePicker.Current.PickFile();
但是,断点永远不会命中,当我尝试再次选择文件时,它会给出一个异常,好像await方法仍在运行。
编辑
面对此问题时,我正在添加JPG图片。现在,我尝试添加一个PDF文件,并命中了下一个断点。 fileName即将到来,但是byte[]
为空。