簡體   English   中英

在頁面之間傳遞數據WP7

[英]Passing data between pages wp7

我有一個小問題。 我有一個像這樣的數據模板:

    <phone:PhoneApplicationPage.Resources>
    <DataTemplate x:Key="DangersItemTemplate">
        <Grid Height="102" Width="447" Tap="Grid_Tap">
            <Image Name="image" Source="{Binding Image}" HorizontalAlignment="Left" Width="90" />
            <TextBlock Name="text" Text="{Binding Nom}" TextWrapping="Wrap" Margin="102,16,16,22"/>
        </Grid>
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>

我想在CSharp代碼中使用Textlock控件將Text屬性傳遞給第二個xaml頁面,但是我找不到該控件的名稱,它無法訪問。

任何想法 ?

我只是使用VB.Net,但我相信您可以進行轉換。 只需在應用程序中使用任何共享變量即可。 在這里,您可以在SourceCode示例中看到它:

http://www.activevb.de/rubriken/kolumne/kol_30/res/nachtscanner.zip

只需在應用程序類中使用“ Public Shared MyText As String 您可以在任何地方訪問此可變項。 您也可以使用INotifyPropertyChanged綁定該共享屬性。

或者,您可以使用導航查詢。 在這里閱讀更多:

如何通過NavigationService.Navigate傳遞查詢字符串變量?

您綁定了TextBlock的Text,因此您必須在datacontext中具有該值。 我將此值添加到Querystirng並導航到頁面。

var text = ((Whatever) DataContext).Nom;
string page2Uri = string.Foramt("/PAge2.xaml?Nom={0}", text);
NavigationService.Navigate(new Uri(page2Uri, UriKind.Relative));

然后,要從查詢字符串中獲取數據,可以在頁面中使用OnNavigatedTo方法,然后檢查this.NavigationContext.QueryString [“ nom”]

或者看看類似MVVM模式的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM