[转载]WPF窗口跳转及window和page区别
刚接触WPF,有两个概念不是很懂,现理解如下:
1:window和page谁包含谁的问题
一新建WPF应用程序,发现默认启动界面是一个window,将默认启动改为page,没有错误。但是如果在page中执行如下程序报错:
this.content = new Window1();
错误信息是:window是在属性结构的根目录。那么,我们可以理解为,window包含page,而不是反之。
2:登录界面(窗口跳转)
既然WPF的默认启动界面是一个窗口window,那么我也默认理解整个应用程序最上层最好是一个window(虽然全部是page也不会出错)。这大概是习惯使然,因为老的winform程序嘛,大家都是window。
那么,涉及到登录,就有个窗口之间的跳转,貌似没有好的方法,只能在登录的window中:
- WinMain wm = new WinMain();
- wm.Show();
- wm.WindowState = WindowState.Maximized;
- this.Close();
3:页面跳转(page跳转)
前台转:
- <TextBlock FontSize="24" TextWrapping="Wrap" Margin="0,0,0,-19.998">
- <Hyperlink x:Name="LnkPre" NavigateUri="Page2.xaml" Foreground="Black">
- Enter Page2
- </Hyperlink>
- </TextBlock>
后台转:
- NavigationService.GetNavigationService(this).Navigate(new Uri("Page2.xaml", UriKind.Relative));
- NavigationService.GetNavigationService(this).GoForward();向后转
- NavigationService.GetNavigationService(this).GoBack(); 向前转
在后台跳转中,还有一个更简单的用法是:
this.content = new Page2();
4:windows跳转到page
- NavigationWindow window = new NavigationWindow();
- window.Source = new Uri("Page1.xaml", UriKind.Relative);
- window.Show();
[转载]WPF窗口跳转及window和page区别相关推荐
- 设置WPF窗口相对于非WPF窗口的位置
在前一个Post当中,指出了在WPF的WindowInteropHelper类中的一个BUG:通过WindowInteropHelper的Owner属性不能实现把WPF窗口的Owner属性设置为一个非 ...
- [WPF疑难]如何禁用WPF窗口的系统菜单(SystemMenu)
[WPF疑难]如何禁用WPF窗口的系统菜单(SystemMenu) 原文 [WPF疑难]如何禁用WPF窗口的系统菜单(SystemMenu) [WPF疑难]如何禁用WPF窗口的系统菜单(SystemM ...
- 关于窗口跳转的一些总结
在应用有frameset或者iframe的页面时,parent是父窗口,top是最顶级父窗口(有的窗口中套了好几层frameset或者iframe),self是当前窗口, opener是用open方法 ...
- WPF窗口长时间无人操作鼠标自动隐藏
原文:WPF窗口长时间无人操作鼠标自动隐藏 在软件开发中有时会有等待一段时间无人操作后隐藏鼠标,可能原因大致如下: 1.为了安全性,特别是那些需要用到用户名和密码登录服务端的程序,常常考虑长期无人操作 ...
- WPF 窗口居中 变更触发机制
原文:WPF 窗口居中 & 变更触发机制 窗口居中 & 变更触发机制 解决: 1.单实例窗口,窗口每次隐藏后再显示时,位置居中显示 2.多屏幕下单实例窗口,当父窗口移动到其它屏幕时,单 ...
- python跳转到程序顶部_python-如何使Tkinter窗口跳到最前面?
python-如何使Tkinter窗口跳到最前面? 如何获得Tkinter应用程序跳转到最前面? 当前,该窗口显示在我所有其他窗口的后面,并且没有获得焦点. 我应该打电话给一些方法吗? nathan ...
- WPF窗口允许通过拖放进行切换
目录 介绍 背景 使用代码 TabWindow库的细分 带有关闭按钮的自定义TabItem 派生的TabControl支持自定义选项卡之间的拖放 允许将一个窗口切换到另一个窗口的TabWindow 总 ...
- 为 Revit API 插件创建 WPF 窗口的基本项目(Revit API+WPF 系列 2/3)
在本系列的第二部分中,我们将讨论在创建 WPF 窗口时应用的基本项目. 为了继续,请确保您的插件项目能够创建 WPF 窗口.如果没有,您最好创建一个具有 WPF 功能的项目模板并创建另一个新项目.然后 ...
- 论多窗口相互关联下window.open打开已在的窗口时只激活不刷新的实现方案
前端博主,热衷各种前端向的骚操作,经常想到哪就写到哪,如果有感兴趣的技术和前端效果可以留言-博主看到后会去代替大家踩坑的- 主页: oliver尹的主页 格言: 跌倒了爬起来就好- 来个关注吧,点个赞 ...
最新文章
- 解决了一个遗留的Portlet奇怪问题
- python程序设计试卷_Python程序设计试题库
- python连通域标记_图像分析:二值图像连通域标记
- 浅谈摄像头有关的安全问题
- jedis set集合 java,使用Jedis操作String、List、Set、Map等常见数据 | zifangsky的个人博客...
- Xcode搭建真机调试环境 图文实例
- scikit-learn:通过Non-negative matrix factorization (NMF or NNMF)实现LSA(隐含语义分析)...
- ASP.NET Core分布式项目实战(运行Consent Page)--学习笔记
- 保驾护航金三银四,100%好评!
- 一文理解 pytorch 拟合网络的过程
- Java基础之不一样的方法重载!
- 拓端tecdat|R语言Fama French (FF) 三因子模型和CAPM多因素扩展模型分析股票市场投资组合风险/收益可视化
- 关于Linux下载工具
- CodeForces 1389G Directing Edges 边联通分量缩点+树形dp+rerooting technique
- iOS TextField收取键盘的方法
- 蓝牙4.0 BLE传统配对绑定过程
- 破案了!不会讲笑话不会作诗的chatGPT!
- Python+OpenCV判断图像是黑底还是白底
- 5分钟给商品建立3D模型,我是如何做到的?
- 安静:内向性格的竞争力 苏珊·凯恩