Windows 10 通用应用程序 VB.NET 在页面之间传递数据
Windows 10 Universal App VB.NET Passing data between pages
我发现 VB.NET 中页面之间的导航是这样调用的:
Frame.Navigate(GetType(MainPage))
根据我的阅读,您可以传递这样的参数:
Frame.Navigate(GetType(MainPage), "Parameter Here!!")
问题是,我无法将其转到其他页面。在 C# 中查找许多示例,我发现它可能使用以下方法之一。虽然,其中 none 似乎在 VS2015
中被识别
Protected Overrides Sub LoadState(navigationParameter As Object, pageState As Dictionary(Of String, Object))
Protected Overrides Sub onNavigateTo(**Params**)
^^ 他们都声明“...在基础 class”中没有覆盖子
如何在新出现的页面接收参数?是完全不同的方法吗?
深入研究所有页面都继承自的页面 class 之后,似乎重写 "onNavigateTo" Sub 是此操作的关键。从这里您可以访问它的参数并成功通过。
不幸的是,即使是 Microsoft 也没有为此提供 VB.NET 文档。这是我的代码:
在首页
Frame.Navigate(GetType(BlankPage1), "Hello")
在第二页
Public NotInheritable Class BlankPage1
Inherits Page
Public thestring As String
Protected Overrides Sub onNavigatedTo(e As NavigationEventArgs)
thestring = e.Parameter
End Sub
这成功了。我希望这对以后的人有帮助
我发现 VB.NET 中页面之间的导航是这样调用的:
Frame.Navigate(GetType(MainPage))
根据我的阅读,您可以传递这样的参数:
Frame.Navigate(GetType(MainPage), "Parameter Here!!")
问题是,我无法将其转到其他页面。在 C# 中查找许多示例,我发现它可能使用以下方法之一。虽然,其中 none 似乎在 VS2015
中被识别 Protected Overrides Sub LoadState(navigationParameter As Object, pageState As Dictionary(Of String, Object))
Protected Overrides Sub onNavigateTo(**Params**)
^^ 他们都声明“...在基础 class”中没有覆盖子
如何在新出现的页面接收参数?是完全不同的方法吗?
深入研究所有页面都继承自的页面 class 之后,似乎重写 "onNavigateTo" Sub 是此操作的关键。从这里您可以访问它的参数并成功通过。 不幸的是,即使是 Microsoft 也没有为此提供 VB.NET 文档。这是我的代码:
在首页
Frame.Navigate(GetType(BlankPage1), "Hello")
在第二页
Public NotInheritable Class BlankPage1
Inherits Page
Public thestring As String
Protected Overrides Sub onNavigatedTo(e As NavigationEventArgs)
thestring = e.Parameter
End Sub
这成功了。我希望这对以后的人有帮助