Błąd podczas dynamicznej zmiany tła

Najpierw stworzyłem przycisk (nazwany jako BackgroundChooser), który służy do dynamicznej zmiany obrazu tła (mogą wybrać własny obraz jako tło). Ale użyłem już domyślnego obrazu tła (image1.jpg) dla mojej aplikacji Windows Phone 7. Kiedy klikam przycisk wyboru tła, kieruje się do naszych zapisanych zdjęć. Następnie wybrałem obraz jako mój własny obraz tła. Ale domyślny obraz tła nadal się nie zmienia. Następnie, gdy zmienię domyślne tło na czarne, mogę ustawić własny obraz tła (działa idealnie). Potrzebuję pomocy!!! Z góry dziękuję za ciężką pracę !!!

Poniżej znajduje się kod, którego użyłem -:

    private void BackgroundChooser_Click(object sender, MouseEventArgs e)
    {
        var PhotoChooser = new PhotoChooserTask();
        PhotoChooser.Completed += new EventHandler<PhotoResult(PhotoChooser_Completed);
        PhotoChooser.Show();
    }

    void PhotoChooser_Completed(object sender, PhotoResult e)
    {
        {
            if (e.TaskResult == TaskResult.OK)
            {
                System.Windows.Media.Imaging.BitmapImage bmp = new System.Windows.Media.Imaging.BitmapImage();
                bmp.SetSource(e.ChosenPhoto);
                var app = Application.Current as App;
                if (app == null)
                return;
                var imageBrush = new ImageBrush { ImageSource = bmp, Opacity = 0.5d };
                app.RootFrame.Background = imageBrush;
                //app.RootFrame.Background = new SolidColorBrush(Colors.Black);  //we can apply just color too like this
            }
        }
    }

questionAnswers(1)

yourAnswerToTheQuestion