微软公司开发的Silverlight工具是一个功能非常强大的开发辅助工具。不仅能帮助我们实现多媒体相关功能处理,而且还能在一定程度上降低程序员的编程压力。我们在这里为大家讲解的Silverlight切换页面这个做法是来自“Jesse Liberty”的视频“USING MULTIPLE PAGES, PART 1”,基本方法是创建一个PageSwticher,这个PageSwitcher不直接显示页面,而是作为一个后台,负责切换各个页面。#t#
Silverlight切换页面的具体做法是:
新建一个UserControl,名字可以叫做PageSwitcher。然后将PageSwitcher.xaml中的Grid控件去掉,编程下面这样:
- xmlns="http://schemas.microsoft.
com/winfx/2006/xaml/presentation%22 - xmlns:x="http://schemas.microsoft.
com/winfx/2006/xaml%22>
然后在后台代码中增加一个方法,比如叫做SwitchPage,用来实现Silverlight切换页面,然后在构造函数中调用,用来显示***个要显示页面:
- public partial class PageSwitcher
: UserControl- {
- public PageSwitcher()
- {
- InitializeComponent();
- SwitchPage(new Page());
//显示***个要显示的页面- }
- ///
- /// 切换页面
- ///
- /// 需要被切换到的页面
- public void SwitchPage
(UserControl newPage)- {
- this.Content = newPage;
- }
- }
然后在我们的各个页面中,在需要切换页面的事件响应方法中,只需要这么做:
- private void btn_Click
(object sender, RoutedEventArgs e)- {
- PageSwitcher switcher =
this.Parent as PageSwitcher;- switcher.SwitchPage(new
AnotherPage());- }
***,我们需要修改app.xaml.cs中的Application_Startup方法,修改起始页面
- private void Application_
Startup(object sender,
StartupEventArgs e)- {
- this.RootVisual =
new PageSwitcher();- }
完成到这一步之后,我们就能够实现Silverlight切换页面。