【发布时间】:2012-04-25 03:13:26
【问题描述】:
我正在使用 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 比较陌生,请见谅。
【问题讨论】:
标签: c# visual-studio-2010 windows-phone-7 navigation