2021-08-19 WPF控件专题 Frame 控件详解
Posted 微软MVP Eleven
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021-08-19 WPF控件专题 Frame 控件详解相关的知识,希望对你有一定的参考价值。
1.Frame 控件介绍
Frame ContentControl 支持导航,可以将一个页面导航到另一个页面。 可能承载Page页,
TabItem ContentControl 直接在内部添加元素,布局成一个页面,直接将一个页面内嵌到TabItem.
Winform TabControl TabPage 将一个Form内嵌到TabPage
TabItem中可以内嵌一个Window?? ---- No ----该怎么办??? Frame
Wpf中,Window—根 ,内容不能是一个window
Page页是什么? 封装一页的内容
Frame属性:
Source 要显示的Page 的路径 要导航到的新内容
NavigationUIVisibility 是否显示导航栏 automatic hidden visible
2.具体案例
<Window x:Class="WpfAppTest.FrameWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WpfAppTest"
mc:Ignorable="d"
Title="FrameWindow" Height="583.436" Width="874.634" Loaded="Window_Loaded">
<Grid>
<!--直接在Window中呈放一个Frame 显示一个页面-->
<Frame Name="framePage" HorizontalAlignment="Left" Height="113" Margin="100,47,0,0" VerticalAlignment="Top" Width="220" NavigationUIVisibility="Visible"/>
<TabControl HorizontalAlignment="Left" Height="306" Margin="88,196,0,0" VerticalAlignment="Top" Width="642">
<TabItem Header="TabItem">
<Frame Source="PageRoleInfo.xaml" NavigationUIVisibility="Hidden"/>
</TabItem>
<TabItem Header="TabItem">
<Frame Source="PageUserInfo.xaml" NavigationUIVisibility="Hidden"/>
</TabItem>
</TabControl>
</Grid>
</Window>
private void Window_Loaded(object sender, RoutedEventArgs e)
{
//1.直接在xaml代码中设置Source
//2.
// framePage.Source = new Uri("PageRoleInfo.xaml",UriKind.Relative);
//3.先实例化Page对象
PageRoleInfo pageRoleInfo = new PageRoleInfo();
framePage.Navigate(pageRoleInfo);
string ss = "aaa";
framePage.Navigate(pageRoleInfo, ss);//假设需要传值
}
以上是关于2021-08-19 WPF控件专题 Frame 控件详解的主要内容,如果未能解决你的问题,请参考以下文章
2021-08-19 WPF控件专题 Expander 控件详解
2021-08-13 WPF控件专题 ComboBox 控件详解