wpf的主窗口和多个Page的切换,用主窗口的Frame控件实现。
切换Page子窗口的时候,保留父窗口的界面。主要的思路实际就是在主窗口设置多个属性,这些属性均是对Frame内容的赋值。但是初始化的时候value是空的,赋值为空,也就是主窗口不显示Page的内容。
属性其实是为了外界对封装好的类内部字段的读写。
这个代码中只有对字段page_Fund 、page_Confirm的写操作(set)。然后再将值赋给Frame
只有在按钮事件中才对属性进行写操作,对应属性的value就有值了
//封装好的内部字段,初始空
private FundPro_Page page_Fund = null;
private ConfirmPro_Page page_Confirm = null;
//属性将从外界输入的值通过value赋给内部字段,再传递给Frame
public FundPro_Page Page_Fund { set { page_Fund = value; mainFrame.Content = page_Fund; } }
public ConfirmPro_Page Page_Confirm { set { page_Confirm = value; mainFrame.Content = page_Confirm; } }
//按钮事件对属性操作进行写操作,将外界的值传入属性的value
private void ds_Fund_Click(object sender, RoutedEventArgs e)
{
this.Page_Fund = new FundPro_Page() ;
}
private void ds_Conf_Click(object sender, RoutedEventArgs e)
{
this.Page_Confirm = new ConfirmPro_Page();
}
这里只有对属性的写操作,属性=要写入的值;还可以在属性中添加get功能,对属性读操作,某外界字段=属性。