首页 > 代码库 > D24_02_页面驻留(page Frame)
D24_02_页面驻留(page Frame)
Embedded.xaml
<Page x:Class="demo.Embedded" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" WindowTitle="Embedded" Name="embeddedPage"> <StackPanel Margin="5"> <TextBlock Margin="5" TextWrapping="Wrap">This page contains an embedded page in a frame.</TextBlock> <Frame Name="embeddedFrame" Margin="5" Source="Page1.xaml" BorderBrush="Blue" BorderThickness="1" ></Frame> <CheckBox Name="chkOwnsJournal" Margin="5" Click="chkOwnsJournal_Click">Embedded Frame Owns Journal</CheckBox> </StackPanel></Page>
Embedded.xaml.cs
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;namespace demo{ /// <summary> /// Embedded.xaml 的交互逻辑 /// </summary> public partial class Embedded : Page { public Embedded() { InitializeComponent(); } private void chkOwnsJournal_Click(object sender, RoutedEventArgs e) { if (chkOwnsJournal.IsChecked == true) { embeddedFrame.JournalOwnership = JournalOwnership.OwnsJournal; embeddedPage.ShowsNavigationUI = false; } else { embeddedFrame.JournalOwnership = JournalOwnership.UsesParentJournal; embeddedPage.ShowsNavigationUI = true; } } }}
Page1.xaml
<Page x:Class="NavigationApplication.Page1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" WindowTitle="Page1" Title="Page1"> <TextBlock Margin="3" TextWrapping="Wrap"> This is a simple page. Click <Hyperlink NavigateUri="Page2.xaml">here</Hyperlink> to go to Page2. </TextBlock></Page>
Page2.xaml
<Page x:Class="NavigationApplication.Page2" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Page2"> <StackPanel> <TextBlock Margin="3" TextWrapping="Wrap"> This is a simple page. Click <Hyperlink NavigateUri="Page3.xaml">here</Hyperlink> to go to Page3. </TextBlock> </StackPanel></Page>
Page3.xaml
<Page x:Class="NavigationApplication.Page3" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Page3" WindowTitle="Page3" > <StackPanel Margin="3" Name="pnl"> <TextBlock Margin="3" TextWrapping="Wrap"> This is a Page3.xaml. </TextBlock> </StackPanel></Page>
WindowWithFrame.xaml
<Window x:Class="demo.WindowWithFrame" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="WindowWithFrame" Height="300" Width="300"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition></ColumnDefinition> <ColumnDefinition></ColumnDefinition> </Grid.ColumnDefinitions> <StackPanel> <TextBlock Margin="3" TextWrapping="Wrap">This is a ordinary window content.</TextBlock> <Button Margin="3" Padding="3">Close</Button> </StackPanel> <Frame Grid.Column="1" Source="Page1.xaml" BorderBrush="Blue" BorderThickness="1" NavigationUIVisibility="Visible"></Frame> </Grid></Window>
D24_02_页面驻留(page Frame)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。