Advanced SAPUI5 – 21: Custom Button Control with Drag and Drop

UI5 offers a wide range of interactive features to deliver a fantastic user experience. The Drag and Drop design pattern was added to SAPUI5 version 1.56 in order to create a straightforward and intuitive user interface. Drag and drop can be used in a number of contexts, such as rearranging things in a list, moving items between controls, and rearranging items on a calendar. Almost all controls now allow for drag and drop capability.

Statement of Requirements:

We’ll implement the Drag and Drop feature between Table Control and Button Control in this use case. The user will be able to drop items on the Delete button to delete them after being able to drag them from the Table Control.

Let’s break down the prerequisite into manageable steps:

Adding draggability to table components.

Creating a Unique Button-Control and Expanding Its Properties.

My worklist template is being used. If it’s not 1.56 or higher, you won’t be able to use dragDropConfig aggregate for the controls.

Adding draggability to table items:

The top of the View needs to have the sap.ui.core.dnd namespace defined. The aggregation that aids in making the controls droppable and draggable is called dragDropConfig. Three configuration entities are included with dragDropConfig: DragInfo, DropInfo, and DragDropInfo.

When it is unknown where to dump anything, DragInfo is employed.The Dropping feature of the control is enabled via DropInfo. When we wish to execute drag and drop within the same control, such as rearranging the elements in the Table control, we can utilize the DragDropInfo.

Since items is the aggregate for which we are enabling the dragging, we specify ‘items’ in the sourceaggregation and utilize the DragInfo option to make the Table-items draggable.

Creating Personalized Button Control:

To construct a unique button control, I made a new DeleteButton.js file. This is what we’re doing to give the Button control more metadata and enable droppable functionality.

There, the renderer describes the HTML structure that will be added to our application’s DOM tree each time a control is instantiated in a view, and the metadata section defines the data structure or API.

Dnd Key can be used to enable drag-and-drop functionality for controls.The following attributes may be found in the drag-and-drop control metadata: layout, selector, droppable, and draggable. We are setting the droppable attribute to “true” in this instance. Since the renderer of the sap.m.Button control will be used to create the custom Delete Button, renderer is defined here as an empty object.

Drop-enabled View Button Control Usage

We can now use our custom drop-enabled button control in the View. First, we must use xmlns:control=”DnD.ZDnD_rmer.control” to add this custom control to the view.

This is the code that will cause the MessageBox to open when the Button control is pressed.

Thank You For Your Time


you may be interested in this blog here:-

How to use SOQL and SOSL?

Mastering Customer 360 in Salesforce

Elevating User Experiences: Unleashing Advanced UI Elements and Custom Controls in SAPUI5

  • Related Posts

    Breaking Silos: QAOps & Its Impact on DevOps

    Learn about QAOps and its role in bridging the gap between Development, Operations, and Quality Engineering. Boost your career with our comprehensive QAOps courses at Bright-Minds.

    AI-Code Creates More Testing Work: Adapting to Increased Demand |

    Learn about the impact of AI-generated code on QA teams and strategies for adapting to increased testing demands. | Bright-Minds Training Institute, Pune

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    You Missed

    Breaking Silos: QAOps & Its Impact on DevOps

    • By Varad
    • October 25, 2026
    • 8 views
    Breaking Silos: QAOps & Its Impact on DevOps

    AI-Code Creates More Testing Work: Adapting to Increased Demand |

    • By Varad
    • October 24, 2026
    • 12 views
    AI-Code Creates More Testing Work: Adapting to Increased Demand |

    Bridging the Gap: How Automation Addresses Understaffing in QA Teams |

    • By Varad
    • October 23, 2026
    • 19 views
    Bridging the Gap: How Automation Addresses Understaffing in QA Teams |

    Selenium BiDi: A Game Changer for Browser Automation |

    • By Varad
    • October 22, 2026
    • 22 views
    Selenium BiDi: A Game Changer for Browser Automation |

    Catch Regressions First: The Power of Continuous Performance Baselines

    • By Varad
    • October 21, 2026
    • 34 views
    Catch Regressions First: The Power of Continuous Performance Baselines

    uman Oversight in AI Testing

    • By Varad
    • October 19, 2026
    • 26 views
    uman Oversight in AI Testing