在Web Dynpro应用程序中,您可以使用插头从一个视图导航到另一个视图。
视图之间的导航
每个view都有进入的插头(plug),以及出去的插头.进来的插头用来得到这个view的开始点,而出去的插头用来调用下一个view.注意:每个window可能有几个view,所以必须指定第一个view,相应的,第一个view没有进入插头(inbound plug).
连接关系:几个view之间的连接通过导航链接(Navigation Link)来实现.
视图之间的导航通过执行出站插入来开始,执行出站插入可以触发导航事件。导航事件是导航队列中的特殊异步事件。在一个视图中可以执行多个出站插入。
入站插入是特殊的事件处理方法,可设置出站插入时对应的入站插入,调用时,视图执行首先执行出站插入,调用处理事件并验证导航正确性,最后调用入站事件跳转视图。
出站和入站插入通导航链接连接在一起。从技术角度来讲,将入站插入链接到出站插入,意味着将入站插入事件的处理器方法注册到执行出站插入的导航事件,导航事件的方法参数包括出站插入。
窗口和嵌套视图
Window是多个view的组合容器,view必须在window中才能被用户看到.
一个window包含至少一个view,如果是多个view的话通过导航链接实现,当然,必须定义开始的view。
每个window可以有一个或者多个进入以及输出端(Plug),对应于view的plug。
outbound plug:链接window和view的inbound plug
inbound plug:链接view的outbound plug到嵌入window
创建一个窗口时,需要定义三个元素:
- 组件的可视界面中的所有视图必须嵌入到窗口中。
- 如果需要并排显示多个视图,则要使用一个布局中包含ViewContainerUIelement 的特殊视图来定义这些视图的布局和位置。此容器视图嵌入在窗口中,并且,在 ViewContainerUIelement定义的每个区域内,该 视图区域中所有可能的视图均被嵌入到窗口中(嵌套嵌入)。每个 ViewContainerUIelement 在启动时只有一个缺省视图。
- 不同视图之间的导航链接必须进行定义。
视图区域一次只能显示一个视图。必须定义视图之间的导航链接,才能替换视图区域的内容。
通过创建空白视图可以清空视图区域,相应的导航事件会调用空白视图的入站插入
页面跳转是指通过某种方式(如按钮)触发跳转到另一个页面(视图)
Webdynpro-视图跳转(View Navigation)实例
1.新建两个视图,一个是主页面,一个是跳转后页面;在主页面的layout中设置跳转触发控件(如按钮),并创建控件的action事件,然后在Outbound Plugs中定义一个变量。
2.在跳转后页面的Inbound Plugs中定义一个变量。
3.将需要的视图拖进窗体中,然后在窗体中进行视图关联(从哪个视图到哪个视图)。
当绑定好对应关系后,创建Action时自动创建的Handler方法会自动新增一下代码,实际上是调用这段代码进行跳转的效果。
4.创建Web Dynpro应用程序,将生成的URL在网页中打开,查看效果即可。