Use dialogs in backoffice

Oh, WebForms is another story :slight_smile:

Then I suggest you to use the iframe approach, where the Angular (not AngularJS) component is used. The idea is to create a dialog (can be ComponentArt:Dialog or any kind of HTML/JS dialog) which has an iframe as the content. The iframe’s url points to the special page where it can render the selector for different entity types. Here is the url:

https://[websiteurl]/Litium/UI/frame/EntitySelectorWrapper?entityType=person&entityMultiSelect=false

Note the entityType is person, which is the entity name you can find at the very bottom of this page https://docs.litium.com/documentation/previous-versions/litium-6/architecture/back-office/select-dialog

Change entityMultiSelect to true if you want to select multiple items. That Url will show you a person list and the Cancel, Ok buttons. To catch the data when user selects an item and clicks on Ok button, have this JS snippet in your user control:

function onSelect(event) {
    if (event.data.source !== "entityselector")
        return;
    var selectedPersons = event.data.value.items;
}
window.addEventListener("message", onSelect, false);

What it does is, listen to the onMessage event of the iframe, and get the selected person. selectedPersons is an array which contains the list of selected persons. Each item has a Name and a SystemId.