将数据返回到上一页 Windows Phone 8.1 Windows RunTime
Posted
技术标签:
【中文标题】将数据返回到上一页 Windows Phone 8.1 Windows RunTime【英文标题】:Returning data to a previous page Windows Phone 8.1 Windows RunTime 【发布时间】:2015-03-05 01:37:51 【问题描述】:我正在寻找一种从表单返回数据的简单方法。 我正在尝试使用从 form 2 返回的数据填充 form 1 上的文本框。这是用于导航到 form 2 的代码:
this.Frame.Navigate(typeof(form 2));
而且我知道您可以使用此方法将参数传递回 form 1,但是当按下返回时,它会转到 form 2,这并不理想,因为我希望它回到form 0。
你能用这个或类似的东西返回数据吗:
Frame.GoBack();
此外,在页面之间传输数据的唯一方法是:
将处理程序传递给前一个页面,以便您可以从当前页面访问公共变量/属性,
使用静态变量/属性 - 可能是单例
再次使用文件/设置
如Passing Data from Page to Page for Windows Phone 8.1中所说
【问题讨论】:
【参考方案1】:您是否有理由不想使用您提到的列表中的选项 2 - 将其存储在一个简单的静态属性中?这当然是一个快速的解决方案。
如果您使用 MVVM 和诸如 MVVM Light 之类的库,另一种选择是使用信使将值从连接到表单 2 的 ViewModel 发送到连接到表单 1 的 ViewModel。
订阅:
Messenger.Default.Register<TypeOfMessageYouWantToSend>(this, MethodWhichHandlesTheReceivedValue);
并发送:
Messenger.Default.Send<TypeOfMessageYouWantToSend>(msg);
您可以在导航返回时发送它,甚至在填充表单时发送它等等。
【讨论】:
我只是希望 :) 非常感谢!以上是关于将数据返回到上一页 Windows Phone 8.1 Windows RunTime的主要内容,如果未能解决你的问题,请参考以下文章
windows phone 8.1 电子书阅读器中的翻页动画
如何使用 TCP 或 UDP 将数据从 Windows Phone 8.1 发送到 PC?
尝试在Windows Phone Emulator上部署会返回0x8103010B
如何将 Windows 商店中的 Windows Phone 应用程序(8.1 XAML)迁移到 8.1 Silverlight?