Die XdevListSelect ist eine Dropdown-Liste, aus der Anwender einen Wert auswählen können. Auch eine Mehrfachauswahl ist optional möglich. Die Dropdown-Liste enthält meistens die Werte einer Spalte einer Datenbanktabelle.
Die XdevListSelect ist eine Formular-Komponente und kann via XdevFieldGroup persistiert werden.
Wichtige Properties:
Include Page Property Auto query data Property Auto query data Include Page Property ConnectedForm Property ConnectedForm Include Page Property Entity Property Entity Include Page Property ItemCaptionFromAnnotation Property ItemCaptionFromAnnotation Include Page Property ItemCaptionValue Property ItemCaptionValue Include Page Property Master component Property Master component Include Page Property MultiSelect Property MultiSelect - ReadOnly
Include Page Property Required Property Required Include Page Property RequiredError Property RequiredError Include Page Property Rows Property Rows Include Page Property TabIndex Property TabIndex
Wichtige Events:
Include Page Event valueChange Event valueChange
Databinding:
- Daten-Container (Model)
XdevBeanItemContainer - Standard Daten-Container. Die Zuweisung erfolgt mit der Methode setContainerDataSource.
Code Block language java theme Confluence // Generates a new XdevBeanItemContainer 'productList' XdevBeanItemContainer<Product> productList = new XdevBeanItemContainer<Product>(Product.class); // Sets the XdevBeanItemContainer listSelect.setContainerDataSource(productList);
- XdevLazyEntityContainer - Wird ausschließlich von RapidClipse verwendet, wenn die Property Entity > Auto quer data selektiert ist.
Examples:
Selektierung zurücksetzen - Setzt die Selektierung auf den Ausgangszustand. Dies löst ein valueChange Event aus.
Code Block language java theme Confluence listSelect.clear();
Fokus setzen - Weist dem XdevInlineDateField den Focus zu. Dies kann ggf. ein focus Event auslösen.
Code Block language java theme Confluence listSelect.focus();
Alle XdevListSelect Methoden
Einträge hinzufügen - Weist dem XdevListSelect manuell Einträge hinzu.
Code Block language java theme Confluence listSelect.addItem("Eintrag 1"); listSelect.addItem("Eintrag 2");
Direkte Zuweisung mehrerer Einträge.
Code Block language java theme Confluence listSelect.addItems("Eintrag 1", "Eintrag 2", "Eintrag 3", "Eintrag 4");
Selektiertes Objekt - Liefert das selektierte Objekt zurück (Entity) - Beispiel mit Category Entity
Code Block language java theme Confluence Category Category = listSelect.getSelectedItem();
oder
Code Block language java theme Confluence Category Category = (Category)listSelect.getValue();
oder - Liefert eine Liste aller selektierten Elemente
Code Block language java theme Confluence List<BeanItem<Category>> selectedItems = listSelect.getSelectedItems();
Elemente Entfernen - Entfernt alle Elemente aus der XdevListSelect
Code Block language java theme Confluence listSelect.removeAllItems();
Element Selektieren - Automatisches Selektieren eines Eintrages - Beispiel: erster Eintrag.
Code Block language java theme Confluence Collection<?> itemIds = listSelect.getItemIds(); listSelect.setValue(((List<Category>)itemIds).get(0));