在Windows phone 8上,我有一个函数,从图片库中获取图像,应该将其作为基本字符串发送到服务器,但是当调用pick image时,它会将我传输到图片库页面,但不会等到我选择它继续向服务器发送空数据。
public void Chplaceimg(string PlaceID)
{
YOimage changeplaceimg = new YOimage();
if (changeplaceimg.pickImage() != null)
{
var pairs = new List<KeyValuePair<string, string>>
{
new KeyValuePair<string, string> ("id", _id),
new KeyValuePair<string, string> ("image", changeplaceimg._base64Image),
new KeyValuePair<string, string> ("place", PlaceID)
};
var serverData = serverConnection.connect("image.php", pairs);
}
}
public bool pickImage()
{
var photoChooserTask = new PhotoChooserTask();
photoChooserTask.Completed += PhotoChooserTaskCompleted;
photoChooserTask.Show();
return true;
}
//run function convertToBase64 when an image is choosed
private void PhotoChooserTaskCompleted(object sender, PhotoResult e)
{
if (e.TaskResult == TaskResult.OK)
{
convertToBase64(e);
}
}
您必须将服务调用作为PhotoChooserTaskCompleted
回调的一部分。
//run function convertToBase64 when an image is choosed
private void PhotoChooserTaskCompleted(object sender, PhotoResult e)
{
if (e.TaskResult == TaskResult.OK)
{
// send data to server here
convertToBase64(e);
}
}