1.在window中使用frame来嵌入page
<Frame x:Name="frame1" Margin="0,9,0,0" Width="830" Background="Azure" Source="page1.xaml"/>
其中 Source="page1.xaml",这个就是引用一个页到frame中
2.要实现页的切换:
在某一个按钮的点击事件中写入下语句,则点击相应按钮则会切换页
BasicData/Page2.xaml 是相对解决方案的路径,即 命名空间 BasicData 下的 Page2.xaml (Page)
this.frame1.Navigate(new Uri("BasicData/Page2.xaml", UriKind.Relative));
3.在页中得到父窗口的对象,并进行关闭
var window = Window.GetWindow(this);
window.Close();
4.页自适应frame的大小
不设置页的高宽,只是设置最小高和最小宽(或者不设置) MinWidth="800" MinHeight="750"
在父窗口有 SizeChanged="wellData_SizeChanged_1" 事件,窗口大小一变则会触发这个事件,我们在其中修改 frame的大小,则页的大小会自己变
private void wellData_SizeChanged_1(object sender, SizeChangedEventArgs e)
{
this.frame1.Width = this.ActualWidth - 160;
}
这些方法一定是可行的,毕竟我刚刚实现了(可能叙述不准确),新手入门,请多指正!