概述
本文主要介绍如何在ADF应用中实现不同Region之间的event的传递。
下面以RegionA和RegionB为例,详细说明如何实现在Region之间传递event。
需求:在RegionA中点击导航栏中的任意一按钮时,在RegionB中触发相同事件。
实现
1、新建ADF应用,并根据需要创建基于Employees和Departments两个表的BC(EO/VO/AM)。
2、在ViewController项目中创建两个Bounded-Task-Flow with Fragments,这里名字分别为RegionA-task-flow和RegionB-task-flow。
3、从“Component Pallete”中分别拖“View”到刚创建成功的两个Task-Flow中,名字分别为RegionA和RegionB,双击根据向导生成两个.jsff的fragments,生成后的名字应分别为RegionA.jsff和RegionB.jsff。
4、打开RegionA.jsff,从“Data Controls”中拖动EmployeesView1到该fragment,根据提示生成form,并带有导航按钮。
5、同样的,打开RegionB.jsff,从“Data Controls”中拖动DepartmentsView1到该fragment,根据提示生成带有导航按钮的form。
6、新建.jspx页面,这里命名为main.jspx,使用“Panel Splitter”Layout进行布局,将页面分割成为左右两部分。分别将RegionA-task-flow和RegionB-task-flow拖到两部分中,生成后的页面如图所示:
7、双击打开RegionA.jsff的PageDef文件,为其导航按钮添加event,查看“Structure”面板,以First按钮为例:在First按钮上点击右键,在“Insert inside First”中选择events,继续在events中点击右键,在“insert inside events”中选择event,命名为FirstEvent,为其他按钮添加同样的操作。进而对RegionB.jsff的PageDef中的导航按钮也添加同样的操作,完成后保存。
8、打开main.jspx页面,在“Structure”面板中的PageDef上点击右键,选择“Edit Event Map”,如图设置event的mapping关系,将所有的event都进行设置。
0 评论:
发表评论