C#を使用してWP7アプリケーションを作成していますが、あるページから別のページにデータを渡す必要があります。
SOで解決策を見つけましたが、まだ問題が発生しています。
「ページ1」に、「ページ2」からの入力を使用して、ユーザーが入力できるリストを表示したいと思います。
「ページ1」に戻るときに、「ページ2」で次のステートメントを使用しました NavigationService.Navigate(new Uri("/MainPage.xaml?text="+WhoBox.Text, UriKind.Relative));
WhoBox
。これはテキストボックスです。
「ページ1」には、次のものがあります。
protected override void OnNavigateTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
if (NavigationContext.QueryString.ContainsKey("text"))
ListBlock.Text = ListBlock.Text + NavigationContext.QueryString["text"];
}
現在、これは機能しますが、限られた方法で動作します。「ページ2」から何かをもう一度追加しようとすると、そこにあるものListBlock
(テキストブロック)が、追加するのではなく、新しく追加されたテキストに置き換えられます。
ListBlock.Text = ListBlock.Text + NavigationContext.QueryString["text"];
古いテキストを完全に置き換えるのではなく、新しいテキストを追加するべきではありませんか?
編集:私は解決策を見つけたかもしれません。何らかの理由で、F5を使用してプログラムを実行しても、XAMLまたは.csファイルの変更は反映されません。私は何か間違ったことをしていますか?たとえば、ボタンを削除しても、プログラムをデバッグ(F5)すると表示されます。変更する必要のある設定はありますか?または、他のコマンドを使用することになっていますか?Visual Studioは比較的新しいので、すみません。