前文写过一种域控件和表控件在一个Page下的实现方式 : http://blog.csdn.net/haqer0825/article/details/6987393
今天学到另一种实现方式:
使用 af:switcher
在一个 panelBox区域里放两组FormLayout 没有值的时候显示 无value属性的那组控件,有值的时候显示value 绑定到VO的控件。
DefaultFacet 表示默认现实哪组控件
FacetName这里设置成 #{bindings.Sysc060VO1Iterator.estimatedRowCount >0 ? 'EdtiForm' : 'DisableForm'}
即邦定到一个table VO上校验是否有行 如果有显示正确form 如果无现实无value属性的Form
另外强调一点CommandButton固然能刷选哪套Form 但是它会刷整个页面,比较不爽。。。。
建议使用commandToolbarButton,必须把panelbox的partialtrigger指向该commandToolbarButton,否则switcher不好用。