2010-12-13 37 views
0

我正在開發一個Windows Phone 7應用程序,並且我有兩個xaml頁面。從第一個,我嵌入了兩個應用程序欄鏈接,從圖庫中選擇圖像或使用相機捕捉圖像。我希望在第一頁上選擇的圖像顯示在第二頁上,應用欄按鈕顯示確認是或否。到目前爲止,我在第一頁(barcodeImage)上有一個圖像控件,它會根據選擇進行更新。是否可以在page.xaml.cs中訪問外部類的成員變量?

MainPage.xaml中

 <controls:PanoramaItem Header="welcome"> 
      <ScrollViewer Name="sv1" VerticalScrollBarVisibility="Auto"> 
       <StackPanel Height="1100"> 
        <TextBlock TextWrapping="Wrap">Random text here. 
        </TextBlock> 
        <Grid x:Name="Grid2" Grid.Row="1" Margin="12,0,12,0"> 
         <Image Height="150" Margin="28,30,168,0" Name="barcodeImage" Stretch="Fill" VerticalAlignment="Top" d:LayoutOverrides="VerticalAlignment" /> 
        </Grid> 
       </StackPanel> 
      </ScrollViewer> 
    </controls:PanoramaItem> 

MainPage.xaml.cs中

 void cameraCaptureTask_Completed(object sender, PhotoResult e) 
    { 
     if (e.TaskResult == TaskResult.OK) 
     { 
      BitmapImage bmp = new BitmapImage(); 
      bmp.SetSource(e.ChosenPhoto); 
      barcodeImage.Source = bmp; 
     } 
    } 

Confirm.xaml

 <!--ContentPanel - place additional content here--> 
    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> 
     <Image Margin="64,36,57,100" x:Name="barcodeImageFinal" Stretch="Fill" /> 
    </Grid> 

我想barcodeImageFinal顯示最終的位圖。我該如何做這項工作?感謝您的期待:)

+1

我不明白標題是如何與你所描述的相關的。或者你問的問題是什麼。 – 2010-12-13 11:15:40

+0

我相信這個問題是我的問題的一個可能的解決方案,在上面的正文中概述。當然,我願意接受替代品。 – Freakishly 2010-12-14 00:18:42

回答

1

正如我理解你的問題,你想創建一個MainPage成員的位圖,然後從Confirm訪問它。一種方法是爲您的位圖創建一些類的公共靜態屬性。例如,可能會在您的App中創建public static BitmapImage FinalBitmap。然後,您可以在cameraCaptureTask_Completed中設置該屬性的值,然後在Confirm類中創建一個Loaded處理程序,該類將圖像源設置爲存儲的位圖。

我認爲你的問題標題的答案是肯定的,如果你讓會員靜態,雖然其他類不是真的「外部」。普通的類成員將不可訪問,因爲您沒有該類的實例。

+0

你是否建議我在我的app.xaml.cs文件中創建一個類 public static FinalBitmap BitmapImage myBitmapImage = new BitmapImage(); } ,然後將選擇的圖像保存到MainPage.xaml的myBitmapImage.Source中,然後在Confirm.xaml.cs中引用相同的myBitmapImage.Source? – Freakishly 2010-12-13 17:53:29

+0

您不需要創建類,只需要BitmapImage類型的靜態屬性即可保存對位圖的引用。然後您的確認頁面可以訪問它。我注意到我在答案中提出了一個錯誤,導致這個錯誤不如原來的那麼清晰。我會編輯它來糾正。 – 2010-12-13 17:59:16

+0

在我的例子中,我建議你在App.xaml.cs的App類中創建屬性,但是你也可以在MainPage類中創建它。關鍵是它是靜態的,以便其他頁面可以在沒有MainPage實例的情況下引用它。 – 2010-12-13 18:02:42

相關問題