1.在视图的Context页签中新建一个属性。
类型选择三个基本类型之一。
2.在Layout中创建一个触发控件,并绑定Action事件。
3.需要展示显示隐藏效果的控件,将visible属性绑定成自定义创建的属性。
4.(可选)修改自定义属性的默认值,如默认显示则为’X’,默认隐藏则为空。
5.修改Action事件中绑定的Handler方法的代码,通过向导获取和赋值。
METHOD onactionget_data .
DATA lo_el_context TYPE REF TO if_wd_context_element.
DATA ls_context TYPE wd_this->element_context.
DATA lv_invisible TYPE wd_this->element_context-invisible.
* get element via lead selection
lo_el_context = wd_context->get_element( ).
* @TODO handle not set lead selection
IF lo_el_context IS INITIAL.
ENDIF.
* get single attribute
lo_el_context->get_attribute(
EXPORTING
name = `INVISIBLE`
IMPORTING
value = lv_invisible ).
"如果显示就改为隐藏,如果隐藏就改为显示
IF lv_invisible = 'X'.
CLEAR:lv_invisible.
ELSEIF lv_invisible IS INITIAL.
lv_invisible = 'X'.
ENDIF.
* set single attribute
lo_el_context->set_attribute(
name = `INVISIBLE`
value = lv_invisible ).
"调用方法取数
DATA lo_componentcontroller TYPE REF TO ig_componentcontroller .
lo_componentcontroller = wd_this->get_componentcontroller_ctr( ).
lo_componentcontroller->execute_bapi_material_get_deta(
).
ENDMETHOD.
6.效果如下。