WPF关于窗口跳转的设计
WPF中,窗体跳转怎么个跳转法比较好?或者怎么设计比较好?打个比方,一般winform的,先隐藏上一层的窗体,然后new出下一层要显示的窗体,然后show出来。WPF当然也可以这样。不过这样感觉不是很流畅。在WPF中还有两种方法,一种是跳转page页,一种是将窗体当成用户控件,然后add到一个模板窗口。流畅程度觉得肯定是将窗体当成用户控件,然后add到一个模板窗口的好。
然后下面说一下我的需求和我的设计以及遇到的疑惑:
需求:有很多窗体需要跳转,然后这些窗体又有很多一样的地方。
设计:首先我将一样的地方做为一个模板窗体。该窗体包括:将一个grid分为3行。第一行是标题,第二行是add用户控件的地方,最后一行是“上一步”和“下一步”的按钮。然后在初始化模板窗体的时候,初始化List<UIElement>,这个LIst里面放的是用户控件add的顺序。然后设计算法在点击上一步和下一步的时候,系统知道要加载哪个用户控件进行显示。
问题:现在的问题是,比如窗体a要跳转到窗体b。可是它的跳转并不是通过点击下一步进行的。此时“下一步”按钮应该隐藏,然后通过点击窗体a中的用户控件中里面的四个按钮,通过点击这四个按钮中的其中一个进行跳转。这样的话我就不知道怎么做了。模板窗体中的grid属于私有控件,而四个跳转按钮是属于用户控件中的控件,并无法访问到模板窗体中的grid,所以也就不能将用户控件add到grid里面。
疑惑:遇到这个问题,那么是否是我跳转窗体的设计不好?或者应该怎么设计才是正确的?这是我最想问的。其次我想是解决我上面问题的方法。如果你能告诉我跳转应该怎么设计才好,第二个问题也就不用回答了。我会重新设计我的结构。