在Windows 8应用程序中,可以使用超链接在XAML页面之间导航,如下所示
Hyperlink MyLink = new Hyperlink();
MyLink.NavigateUri = new Uri("/Views/SamplePage.xaml?entryId=" + entryId, UriKind.Relative);我正在根据内容在IValueConverter内部创建动态超链接。我正在将应用程序移植到Windows 8,并且无法使用相同的代码,因为windows 8只支持使用框架的导航
This.Frame.Navigate(类型(SamplePage));
还有其他方法,我可以使用超链接在Windows 8 metro应用程序中的xaml页面之间导航。
或者,是否有任何方法从IValueConverter内部获取当前帧以在页面之间导航?
发布于 2014-03-20 16:52:03
听起来你是在价值转换器导航-我个人不会那样做。
使用框架对象,将自己的抽象创建为服务,或者使用行为(当然,您可以使用转换器)。
<Grid x:Name="grid5" Grid.Row="1" Grid.Column="2" Background="Purple">
<TextBlock x:Name="TextBox" VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="45" Text="Navigation with param" Margin="0,165,3,165"/>
<interactivity:Interaction.Behaviors>
<core:EventTriggerBehavior EventName="Tapped">
<core:NavigateToPageAction TargetPage="Behaviors_And_Triggers.NewPage" Parameter="{Binding ElementName=TextBox,Path=Text}"/>
</core:EventTriggerBehavior>
</interactivity:Interaction.Behaviors>
</Grid>不要忘记添加行为SDK扩展(添加引用=>扩展=>行为)和命名空间:
xmlns:interactivity="using:Microsoft.Xaml.Interactivity"
xmlns:core="using:Microsoft.Xaml.Interactions.Core"注意: Behaviors_And_Triggers.NewPage => NewPage是页面的名称!
https://stackoverflow.com/questions/22539264
复制相似问题