`
dongdian
  • 浏览: 98767 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

如何在Silverlight中切换“页面”

 
阅读更多

这个做法是来自“Jesse Liberty”的视频“USING MULTIPLE PAGES, PART 1”,基本方法是创建一个PageSwticher,这个PageSwitcher不直接显示页面,而是作为一个后台,负责切换各个页面。

具体做法是:

新建一个UserControl,名字可以叫做PageSwitcher。然后将PageSwitcher.xaml中的Grid控件去掉,编程下面这样:

<usercontrol x:class="SilverlightDemo.PageSwitcher"></usercontrol> xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation%22
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml%22>

然后在后台代码中增加一个方法,比如叫做SwitchPage,用来切换页面,然后在构造函数中调用,用来显示第一个要显示页面:

public partial class PageSwitcher : UserControl
{
public PageSwitcher()
{
InitializeComponent();
SwitchPage(new Page()); //显示第一个要显示的页面
}
/// <summary><br>/// 切换页面 <br>/// </summary>
/// 需要被切换到的页面
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();
}

REF:http://www.cnblogs.com/Ricky81317/archive/2008/11/28/1342942.html

分享到:
评论

相关推荐

    silverlight页面切换怎么加上一过度的效果

    silverlight 页面切换 过度 效果 现在基于左右翻转的效果

    silverlight 操作cookies 以及实现页面语言类型的替换

    通过参考别人的一些例子,自己总结了下。实现了利用silverlight 操作cookie 和 用户可自定义页面的语言类型(主要实现了中英文之间的切换)

    Slidentity源码(silverlight)

    2、三维透视(在查看幻灯片时采用非常酷的3D方式切换页面); 3、打开与保存数据; 4、浏览器外执行(可以点击右键将程序安装到桌面和开始菜单,SL3的新增的强大功能,不过看了源码其实现原理就是嵌入一个类似IE...

    silverlight 3 控件经典入门学习案例

    在Silverlight的程序设计中经常需要在多个XAML页面之间进行切换,以进行不同的功能操作 30.有关ImplicitStyleManager组件: ImplicitStyleManager组件的作用是封装一个附加的行为,该行为将一个框架元素内的相关...

    silverlight翻转Behavior,效果非常炫

    silverlight的behavior,利用blend来使用导入的behavior,可以实现页面左右翻转,上下翻转,斜角翻转等效果。切换时特别炫

    wp7 控件练习

    页面切换页面 页面间传值接收值 2. 项目SilverlightToolkitControls中包含如下控件使用 ContextMenu 日期选择器(DAtaPicker)和事件选择器(TimePicker) 开关控件(ToggleSwitch) 自动完成控件...

    IE11停用后EDGE兼容模式切换指南.pdf

    EDGE怎样兼容IE的网站访问,以下是切换方法 IE 模式支持以下 Internet Explorer 功能: 所有文档模式和企业模式,ActiveX 控件(例如 Java 或 Silverlight),浏览器帮助程序对象,影响安全区域设置和内核 模式的 ...

    windowsPhone开发(三)--导航原理分析

    前两篇文章中,我们的Demo代码都是基于页面切换的,而我们在Silverlight框架下开发的就是以XAML文件为基础的事件驱动程序。也就是说我们的程序会由一个或多个页面作成,这一点和Web程序很相似,所以页面间的切换就很...

    ASP.Net可切换皮肤的后台源码

    ║ 5) 源码后续升级或修补,我们会在该源码评论中发布! ║  ║ ║ ║ ║  ║项目承接:Asp.Net网站,Asp.Net管理系统开发,Winform系统开发 ║ ║ Silverlight、WPF开发,各类管理系统工具开发 ║ ║ ║ ║网站...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    目前市场业务中在产品以及其他项目的认证和检测方面存在诸多不便,用户需要实地考察并频繁与检测单位沟通,填写繁琐的纸质检测报告、当面送递样品,对于检测环节中存在的问题难以及时交互并处理。市场上相应的检测...

    Silverlight4 多语言实现的方法

    1:在项目中新建文件夹“Resouce”,然后再该文件夹下面新增资源文件“AppString.resx”,如果创建一个AppString.resx副本,把文件名改为对应的语言名称,  如AppString.en-US.resx。,并且把AppString.resx的访问...

    Visual.Basic.2010.&.NET4.高级编程(第6版)-文字版.pdf

    1.5.5 在visual studio 2010中记录和使用宏 55 1.5.6 类图 57 1.5.7 应用程序生命周期管理 58 1.5.8 性能工具 60 1.6 小结 62 第2章 对象和visual basic 63 2.1 面向对象的术语 64 2.1.1 对象、类和...

    blazorcam:WebRTC客户端和SignalR服务器用于P2P视频音频通话

    我从BlazorServer项目开始,因为我是C#的忠实拥护者,并且希望尽可能多地使用它,而不必在服务器端的C#和前端的Javascript之间切换。 但是,我发现WASM仍不支持某些功能,因此Blazor Server似乎是我的最佳方法。 ...

Global site tag (gtag.js) - Google Analytics