如何在UWP中获取另一个页面的值

时间:2016-05-07 12:17:53

标签: c# xaml win-universal-app

我不知道如何开始,所以我只是从屏幕截图及其代码开始:

The Textbox.Text-Value should also be in the Textblock at the Bottom here

MainPage.xaml中

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition/>
        <RowDefinition Height="48"/>
    </Grid.RowDefinitions>

    <Frame x:Name="MainContent"/>

    <Grid Grid.Row="1" Background="Gray">
        <TextBlock x:Name="ResultTB"
                   VerticalAlignment="Center"
                   Text="Should also be here"
                   HorizontalAlignment="Center"/>
    </Grid>

</Grid>

MainPage.xaml.cs中

public MainPage()
    {
        InitializeComponent();
        MainContent.Navigate(typeof(ContentFrame));
    }

ContentFrame.xaml

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <TextBox x:Name="Input"
             VerticalAlignment="Center"
             HorizontalAlignment="Center"
             Width="200"/>
</Grid>

现在我想研究ResultTB的Input文本。最简单,最好的方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以使用覆盖导航方法:Frame.Navigate(TypeName, Object)

其中Object是参数。您可以在OnNavigatedTo事件中进入另一个页面。类似的东西:

string txt=ResultTB.Text;
MainContent.Navigate(typeof(ContentFrame), txt);  

并在另一个页面上添加OnNavigatedTo事件和内部:

var parameter = e.Parameter as string;