我想打开Windows Phone 7相机,拍一下,然后操作该图片。但是问题是当我尝试覆盖OnChooserReturn函数时,它也给我错误no suitable method found to override,当我想捕获相机返回的内容时,我会使用以下命令:

ChooserEventArgs<PhotoResult> args = new ChooserEventArgs<PhotoResult>()


尽管我正在使用这两个指令,但它给出了错误The type or namespace name 'ChooserEventArgs' could not be found (are you missing a using directive or an assembly reference?)

using Microsoft.Phone.Controls;
using Microsoft.Phone.Tasks;


有什么问题,我该如何解决?

最佳答案

听起来您正在尝试使用旧的SDK或至少是基于过时SDK的指南。要让手机启动相机,然后使用CameraCaptureTask引用拍摄的图像。您将需要以下Using语句:

using Microsoft.Phone.Tasks;
using System.Windows.Media.Imaging;


您可以在代码中的某个位置(大概是在按钮单击事件中)启动相机:

CameraCaptureTask cct = new CameraCaptureTask();
cct.Completed += new EventHandler<PhotoResult>(cct_Completed);
cct.Show();


然后,您可以像这样处理完成的事件(假设您有一个名为image的Image控件):

void cct_Completed(object sender, PhotoResult e)
{
    if (e.TaskResult == TaskResult.OK)
    {
        BitmapImage bimg = new BitmapImage();
        bimg.SetSource(e.ChosenPhoto);
        this.image.Source = bimg;
    }
}


此处的文档:http://msdn.microsoft.com/en-us/library/microsoft.phone.tasks.cameracapturetask(v=VS.92).aspx

关于c# - 找不到ChooserEventArgs类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5916148/

10-09 14:30