解决Silverlight传递参数问题及Silverlight窗体跳转的方法(2)
这句代码是什么意思呢?分析如下: ①:当整个应用程序启动时,程序的主界面加载就是Grid; ②Grid控件加载完成了,那么它的创建也完成,接下我们就可以为它添
这句代码是什么意思呢?分析如下:
①:当整个应用程序启动时,程序的主界面加载就是Grid;
②Grid控件加载完成了,那么它的创建也完成,接下我们就可以为它添加一个子页面;
3.登陆时的主页面问题就完全解决了,但是登陆成功后我们又怎么来转向成功后的页面呢;我们还是在App.cs里面写一个方法来解决,

1 public void RedirectTo(UserControl userControl) 2 { 3 App app = (App)Application.Current;① 4 app.rootGrid.Children.Clear();② 5 app.rootGrid.Children.Add(userControl);③ 6 }
这三句代码是什么意思呢?分析结果如下:
①:它的意思就是得到当应用程序的对象;
②:刚才我们不是对Grid里面添加Login页面进去了,现在为了添加成功页面进去,我们必须把Grid控件中的Login清除掉;
③这上操作是建立在②的基础之上的,没有它的Clear就不能添加;所以这一步就是在添加新页面;
4.我们怎么来调用这个方法呢?不难看出这个方面的参数类型是UserControl,是一个控件;在调用它时我们传一个就是一个页面;

1 private void btnLogin_Click(object sender, RoutedEventArgs e) 2 { 3 App app = (App)Application.Current; 4 //app.RedirectTo(new MainPage()); 5 app.RedirectTo(new MainPage("测试参数")); 6 }
在要转向的页面中加入一个有参的构造函数,就可以在xaml页面中传参了。

1 public MainPage(string userName) 2 { 3 InitializeComponent(); 4 this.Name = userName; 5 btnIndex.Content = this.Name; 6 }
关于App文件的介绍我在这里就不介绍了,可以在他里面可以定义全局变得,比如:可以定义一个变量来判断是否是登陆用户,这些都可以来做到的;
精彩图集
精彩文章
热门标签
相乘
SSIS包
查询排序
pager控件
argc
wxpython
过
python列表
md5加
群集
codeigniter框
移动网络数据
Request.Form
exe2swf
gsensor驱动
精确
parents
段错误
时间操作
Linux网络编程
比较特别的基
获取本机公网
Documente
类方
encountered
数组形式
unpack.vbs
问
命令行参数
正则匹配
konakona
strncpy
读博客
基础入门
Javscript
父页面
forwarded
部署
SQLTuning
servlet
阻止
腾讯微博
Font
指针函数
异常修
生命期
KyotoTycoon
另类
作用
系统C盘
insert
BOOST
查询性能
设置404错误页
监控脚本
循环调用
HTML十进制
文有乱码
数据库导入
page
赞助商链接
@CopyRight 2002-2008, 1SOHU.COM, Inc. All Rights Reserved QQ:1010969229