当我打电话Page.Frame.Navigate是我可以导航到一个页面小于屏幕尺寸,使其笼罩我刚刚从任何简单的方式导航的页面?理想的解决方案不会涉及大型框架,也不需要重写大部分应用程序。我正在寻找这种效果:Windows 8 Music AppPage.Frame.Navigate覆盖旧的一页
我想我可以做一个黑客通过传递一个页面的快照从新页面导航,并使用此作为背景,但我宁愿更清洁的解决方案。我想我也可以从新页面访问导航堆栈并将旧的渲染渲染到后面。
当我打电话Page.Frame.Navigate是我可以导航到一个页面小于屏幕尺寸,使其笼罩我刚刚从任何简单的方式导航的页面?理想的解决方案不会涉及大型框架,也不需要重写大部分应用程序。我正在寻找这种效果:Windows 8 Music AppPage.Frame.Navigate覆盖旧的一页
我想我可以做一个黑客通过传递一个页面的快照从新页面导航,并使用此作为背景,但我宁愿更清洁的解决方案。我想我也可以从新页面访问导航堆栈并将旧的渲染渲染到后面。
您可以使用Popup元素,正如William Melani所述。这里有一个例子:
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="1*"></RowDefinition>
<RowDefinition Height="2*"></RowDefinition>
</Grid.RowDefinitions>
<Button x:Name="btnPopup" Content="Open Popup" Click="btnPopup_Click_1" Grid.Row="0"></Button>
<Popup IsLightDismissEnabled="True" x:Name="popup1" Grid.Row="1" HorizontalAlignment="Center">
<StackPanel Background="Black">
<Border Background="Blue" BorderThickness="2">
<StackPanel>
<StackPanel Orientation="Vertical" Margin="10">
<TextBlock Text="User:" VerticalAlignment="Center" Margin="0,0,10,0" FontSize="20" />
<TextBox Height="40" Width="250" FontSize="20" />
<TextBlock Text="Mail:" VerticalAlignment="Center" Margin="0,0,10,0" FontSize="20" />
<TextBox Height="40" Width="250" FontSize="20" />
</StackPanel>
<Button HorizontalAlignment="Right" Margin="10">Accept</Button>
</StackPanel>
</Border>
</StackPanel>
</Popup>
而且按钮事件:
private void btnPopup_Click_1(object sender, RoutedEventArgs e)
{
popup1.IsOpen = true;
}
设计是不是真的我的事。
我宁愿将不同的视图分隔成不同的页面,但我想我在某种程度上可以通过使用资源字典来实现这一点。谢谢! – eih
你应该使用一个'弹出'或'UIElement',你已经隐藏在页面上 –