如何从App类访问MainPage类非静态成员?

时间:2015-06-07 15:35:34

标签: c# wpf xaml silverlight windows-phone-8.1

我已根据MSDN文档https://msdn.microsoft.com/en-us/library/windows/apps/hh394038(v=vs.105).aspx在我的空白Windows Phone 8.1 Silverlight应用程序中添加了一个应用程序栏。我已将App类中封装的事件处理程序添加到应用程序栏中的每个按钮。我需要一种从App类访问MainPage类的当前实例的方法,因此我可以在MainPage类中调用非静态方法来更新UI。我有Binged几个小时,但我没有遇到过解决方案。我遇到了这个答案https://stackoverflow.com/a/13314364/3998051,但它回答的问题与我的问题相反。可悲的是,解决方案并非如此。你能帮忙吗?

1 个答案:

答案 0 :(得分:1)

我会使用Reactive Extensions(RX)来解决这个问题。

您可以使用NuGet向项目中添加Reactive Extensions(RX),搜索rx-main并安装Reactive Extensions - Main Library

您的两个网页都会访问一个具有Subject<T>的公共类。一个页面将使用Subject<T>向此OnNext发布事件,另一个页面将使用Subscribe订阅这些事件。

有关完整的工作示例,请参阅Rx how to create a sequence from a pub/sub pattern