WP7

2011-04-01 18 views
6

पर कैमरा कैप्चर टास्क मैं फ़ोन से छवि प्राप्त करने और इसे कुशल बनाने के लिए WP7 पर कैमरा कैप्चर टास्क का उपयोग करना चाहता हूं। मेरे कोड है:WP7

CameraCaptureTask cameraCaptureTask; 
    public MainPage() 
    { 
     InitializeComponent(); 

     try 
     { 
      cameraCaptureTask = new CameraCaptureTask(); 
      cameraCaptureTask.Completed += new EventHandler<PhotoResult>(cameraCaptureTask_Completed); 

     } 
     catch (System.InvalidOperationException ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 

    } 

    private void button1_Click(object sender, RoutedEventArgs e) 
    { 

     try 
     { 
      cameraCaptureTask.Show(); 

     } 
     catch (System.InvalidOperationException ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 

    } 

    void cameraCaptureTask_Completed(object sender, PhotoResult e) 
    { 
     MessageBox.Show("event: " + e.TaskResult.ToString()); 
     if (e.TaskResult == TaskResult.OK) 
     {     
      BitmapImage bmp = new BitmapImage(); 
      bmp.SetSource(e.ChosenPhoto); 
      image1.Source = bmp; 
     } 
    } 

} 

समस्या यह है कि हर बार मैं Button1 क्लिक करें है, घटना उठाया है लेकिन मूल्य ठीक की TaskResult.Cancel instad है। इसके अलावा, फोन में कैमरा नहीं दिखाया गया है।

कोई विचार? धन्यवाद

+0

संभव डुप्लिकेट [विंडोज फोन 7 - CameraTask काम नहीं कर रहा] (http://stackoverflow.com/questions/4891115/windows-phone-7 -cameratask-not-working) –

उत्तर

14

क्या आप डीबगर संलग्न हैं? यदि ऐसा है, तो जब आप ज़्यून सॉफ़्टवेयर का उपयोग कर डिवाइस से कनेक्ट होते हैं तो कैमरा काम नहीं करेगा।

यदि आप WPConnect उपकरण का उपयोग कर कनेक्ट करते हैं तो इसे काम करना चाहिए।

+0

हां समस्या यह थी। मैं ज़्यून का उपयोग कर डिवाइस से जुड़ा था। – user422688

+0

यह बहुत अच्छा है, पता नहीं क्यों माइक्रोसॉफ्ट ने दस्तावेज़ीकरण हटा दिया। –

0

इसे आजमाएं।

void ctask_Completed(object sender, PhotoResult e) 
{ 

    if (e.TaskResult == TaskResult.OK && e.ChosenPhoto != null) 
    { 

     //Take JPEG stream and decode into a WriteableBitmap object 
     App.CapturedImage = PictureDecoder.DecodeJpeg(e.ChosenPhoto); 


     //Collapse visibility on the progress bar once writeable bitmap is visible. 
     progressBar1.Visibility = Visibility.Collapsed; 


     //Populate image control with WriteableBitmap object. 
     ImageMain.Source = App.CapturedImage; 
    } 

} 
1

आप इस कोशिश कर सकते हैं ...

private void button1_Click(object sender, RoutedEventArgs e) 
    { 
     try 
     { 
      cameraCaptureTask = new CameraCaptureTask(); 
      cameraCaptureTask.Completed += new EventHandler<PhotoResult>(cameraCaptureTask_Completed); 
      cameraCaptureTask.Show(); 
     } 
     catch (System.InvalidOperationException ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 
    } 
    void cameraCaptureTask_Completed(object sender, PhotoResult e) 
    { 
     MessageBox.Show("event: " + e.TaskResult.ToString()); 
     if (e.TaskResult == TaskResult.OK) 
     {     
      BitmapImage bmp = new BitmapImage(); 
      bmp.SetSource(e.ChosenPhoto); 
      image1.Source = bmp; 
     } 
    } 
की