2016-04-13 5 views
2

こんにちは、私は、アプリケーション開発の初心者で、値を保持するテキストボックスを別のページに転送する方法を知っていました。私のコードは以下の通りです:Windows Phoneで別のページにテキストボックスを転送する方法8.1-C#

バスケットボタン

private void Confirm_Click(object sender, RoutedEventArgs e) 
    { 
     Frame.Navigate(typeof(Confirmation) , Totaltxt_TextChanged = TotalValue); 

    } 

情報は、その主要な値である私はちょうどtotalvalueをして試してみました

protected override void OnNavigatedTo(NavigationEventArgs e) 
    { 
     Basket Basket = e.Parameter as Basket; 

     if (Basket != null) 
     { 
      COsttxt.Text = string.Format("{0:C}", Basket.Totaltxt_TextChanged); 
     } 
    } 

に送信される必要のあるOnNav送信する必要がありますが、それはNavToページのテキストボックスに設定することさえできます:

 <TextBox x:Name="COsttxt" HorizontalAlignment="Left" Height="58" Margin="229,258,0,0" TextWrapping="Wrap" Text="{Binding TotalValue}" VerticalAlignment="Top" Width="131" TextChanged="COsttxt_TextChanged"/> 

Basket.xamlからTotaltxtテキストボックスを送信し、Confirmation.xamlにテキストボックスの値を表示する方法はありますか?

+0

このHTTPSを使用します://msdn.microsoft.com/en-in/library/windows/apps/hh702394.aspxメソッドフォーム。 – niksofteng

+0

助けてくれてありがとうが、それは本当にテキストボックスを送信する方法を指定しません。 –

答えて

0

確認ページにパラメータを渡していますが、これはバスケット型ではないと確信しています。したがって、as変換を実行するとnullが返されます。

あなたは、単にtotalvalueをこの方法を読んで/合格する必要があります。

private void Confirm_Click(object sender, RoutedEventArgs e) 
{ 
    Frame.Navigate(typeof(Confirmation) , TotalValue); 
} 

protected override void OnNavigatedTo(NavigationEventArgs e) 
{ 
    var totalValue = e.Parameter as string; // or 'as' whatever is type of TotalValue 

    if (totalValue != null) 
    { 
     COsttxt.Text = string.Format("{0:C}", totalValue); 
    } 
} 

編集:以下のように、最終的なテキストボックスの値を渡すと、コード同じの残りの部分を保つ:

Frame.Navigate(typeof(Confirmation) , textboxName.Text); 
+0

答えがありがたいですが、型が文字列ではないのはdouble型ですが、double型に変更するとエラーが発生します。double型に変更しました - totalValue = e.Parameter double;まだエラーはあります。 –

+0

値タイプに 'as'を使用することはできません。代わりに 'Convert.ToDouble(e.Parameter)'を使用してください。 – niksofteng

+0

情報を転送しますが、テキストボックスに正確な情報を送信しません。つまり、テキストボックスが更新されたときにTotalValueに値引きを適用すると、正確な数字で別のテキストボックスにテキストボックスが送信されます。 –

関連する問題