WPF关于窗口跳转的设计

yuandinxiaozhu 2014-02-14 04:35:01
WPF中,窗体跳转怎么个跳转法比较好?或者怎么设计比较好?打个比方,一般winform的,先隐藏上一层的窗体,然后new出下一层要显示的窗体,然后show出来。WPF当然也可以这样。不过这样感觉不是很流畅。在WPF中还有两种方法,一种是跳转page页,一种是将窗体当成用户控件,然后add到一个模板窗口。流畅程度觉得肯定是将窗体当成用户控件,然后add到一个模板窗口的好。
然后下面说一下我的需求和我的设计以及遇到的疑惑:
需求:有很多窗体需要跳转,然后这些窗体又有很多一样的地方。
设计:首先我将一样的地方做为一个模板窗体。该窗体包括:将一个grid分为3行。第一行是标题,第二行是add用户控件的地方,最后一行是“上一步”和“下一步”的按钮。然后在初始化模板窗体的时候,初始化List<UIElement>,这个LIst里面放的是用户控件add的顺序。然后设计算法在点击上一步和下一步的时候,系统知道要加载哪个用户控件进行显示。
问题:现在的问题是,比如窗体a要跳转到窗体b。可是它的跳转并不是通过点击下一步进行的。此时“下一步”按钮应该隐藏,然后通过点击窗体a中的用户控件中里面的四个按钮,通过点击这四个按钮中的其中一个进行跳转。这样的话我就不知道怎么做了。模板窗体中的grid属于私有控件,而四个跳转按钮是属于用户控件中的控件,并无法访问到模板窗体中的grid,所以也就不能将用户控件add到grid里面。
疑惑:遇到这个问题,那么是否是我跳转窗体的设计不好?或者应该怎么设计才是正确的?这是我最想问的。其次我想是解决我上面问题的方法。如果你能告诉我跳转应该怎么设计才好,第二个问题也就不用回答了。我会重新设计我的结构。
...全文
575 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
公西雒 2014-02-17
  • 打赏
  • 举报
回复
可以先把每个框架都设计好,通过隐藏显示来控制。
xieoy 2014-02-14
  • 打赏
  • 举报
回复
你需要学学MVVM,再找个框架,比如Prism,你说的这些东西其实都是框架考虑的事情,用起来很简单,又专业多好。就是学习资料都是英文的,得自己读。除非公司有现成的项目,你一看看就懂了。
exception92 2014-02-14
  • 打赏
  • 举报
回复
引用 3 楼 yuandinxiaozhu 的回复:
[quote=引用 2 楼 danding_ge 的回复:] 脑袋都想大了,还没明白你的意思,你能截个图吗?
[/quote] 我不太明白,但是感觉你把2 中的内容使用wpf的内容控件显示,3 的内容不变,当点击a图中的下一步,切换内容控件显示,同时把下一步按钮隐藏。 至于点击用户控件,lz可以写一个“上抛“事件,用于在父窗口获得,完全可以显示成e图那个样子。
yuandinxiaozhu 2014-02-14
  • 打赏
  • 举报
回复
引用 2 楼 danding_ge 的回复:
脑袋都想大了,还没明白你的意思,你能截个图吗?


公西雒 2014-02-14
  • 打赏
  • 举报
回复
脑袋都想大了,还没明白你的意思,你能截个图吗?

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧