2013-08-23 5 views
0

Salut Je développe une application lockscreen où j'utilise la liste d'images.Après avoir sélectionné une image lorsque je suis en cliquant sur un bouton pour définir lockscreen, Il devrait mis à jour.Mais il mise à jour bot .Here est mon codeLockScreen pour windows phone 8

private async void ApplicationBarIconButton_Click(object sender, EventArgs e) 
    { 
     MediaLibrary mediaLibrary = new MediaLibrary(); 
     //ImageSource im = image1.Source; 
     BitmapImage bitmap = new BitmapImage(); 
     bitmap.SetSource(mediaLibrary.Pictures[imageList.SelectedIndex].GetImage()); 

     String tempJPEG = "MyWallpaper1.jpg"; 

     using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication()) 
     { 
      if (myIsolatedStorage.FileExists(tempJPEG)) 
      { 
       myIsolatedStorage.DeleteFile(tempJPEG); 
      } 

      IsolatedStorageFileStream fileStream = myIsolatedStorage.CreateFile(tempJPEG); 

      StreamResourceInfo sri = null; 
      Uri uri = new Uri(tempJPEG, UriKind.Relative); 
      sri = Application.GetResourceStream(uri); 

      WriteableBitmap wb = new WriteableBitmap(bitmap); 

      Extensions.SaveJpeg(wb, fileStream, wb.PixelWidth, wb.PixelHeight, 0, 90); 

      fileStream.Close(); 
     } 

     LockScreenChange(tempJPEG); 

    } 

    private async void LockScreenChange(string filePathOfTheImage) 
    { 
     if (!LockScreenManager.IsProvidedByCurrentApplication) 
     { 
      await LockScreenManager.RequestAccessAsync(); 
     } 

     if (LockScreenManager.IsProvidedByCurrentApplication) 
     { 
      var schema = "ms-appdata:///Local/"; 
      var uri = new Uri(schema + filePathOfTheImage, UriKind.Absolute); 

      LockScreen.SetImageUri(uri); 
      var currentImage = LockScreen.GetImageUri(); 
      MessageBox.Show("Success", "LockScreen changed", MessageBoxButton.OK); 
     } 
     else 
     { 
      MessageBox.Show("Background cant be changed. Please check your permissions to this application."); 
     } 
    } 

en fait, lors de la première fois que l'application est lancée et quand je suis cliqué sur le bouton de réglage, l'image actuelle sélectionnée est définie comme lockscreen, après que, quand je suis sélection d'une autre image, il montre lockscreen changé, success.No erreur et aucune exception. Je ne sais pas où est le problème. S'il vous plaît aider ........

+0

Une exception en fonte signifie que vous utilisez les mauvais types. Regardez le type de retour de chaque méthode que vous utilisez et assurez-vous qu'il correspond à ce que les paramètres de la méthode exigent. –

Répondre

0

Il a obtenu résolu en changeant le nom du fichier temporaire pour le nom du fichier d'origine à savoir la chaîne tempJpeg