XdevTwinColSelect

Die XdevTwinColSelect besteht aus zwei Listboxen, mit der man eine Auswahlliste erstellen kann, indem man einzlene oder mehrere Werte gleichzeitig in die rechte Listbox übernimmt. Persistiert werden nur die Einträge der rechten Listbox. 

Die XdevTwinColSelect ist eine Formular-Komponente und kann via XdevFieldGroup persistiert werden.  


Wichtige Properties:
  • Auto query data - Führt automatisch eine Datenbankabfrage durch und füllt das mit der UI-Komponente verknüpfte Entity. Daten, die nicht angezeigt werden können, werden lazy nachgeladen (Lazy-Loading). Als Daten-Container wird der XdevLazyEntityContainer verwendet.

  • Entity - Verknüpft das zugewiesene Entity mit der UI-Komponente.

    • Properties - Zeigt in der UI-Komponente die Attribute des verknüpften Entites an, die hier angegeben werden, z.B. {%company}. Es können auch mehrere Attribute angezeigt werden, z.B. {%company}, {%carmodels}, {%price}. Dadurch werden die ggf. gesetzten Einstellung im Entity Editor bei Settings > Entity caption sowie bei Properties > ItemCaptionValue überschrieben.
    • Data - Verwendet anstelle der Standard-Abfragestrategie Auto query data die Abfrage-Methode findAll oder eine benutzerdefinierte Abfrage-Methode. findAll überträgt das gesamte Abfrageergebnis und verwendet als Daten-Container den XdevBeanItemContainer. Lazy-Loading wird nicht unterstützt.
    • Hierarchy - Nur bei XdevTree.
  • ItemCaptionFromAnnotation - Zeigt in der UI-Komponente die Attribute des verknüpften Entites an, die im Entity Editor bei Settings > Entity caption global definiert wurden, z.B. {%company}, {%carmodels}, {%price}.

  • ItemCaptionValue - Zeigt in der UI-Komponente die Attribute des verknüpften Entites an, die hier angegeben werden, z.B. {%company}. Es können auch mehrere Attribute angezeigt werden, z.B. {%company}, {%carmodels}, {%price}. Dadurch wird die ggf. gesetzte, globale Einstellung im Entity Editor bei Settings > Entity caption überschrieben. 

  • LeftColumnCaption - Setzt den Text als Beschriftung der linken Spalte.

  • Connected form - Verknüpft die UI-Komponente (Master) mit der angegebenen XdevFieldGroup (Detail). 

  • Master component - Mit der UI-Komponente verknüpfte Master-Komponente.

  • MultiSelect - Lässt eine Mehrfachauswahl zu.

  • Required - Die Formular-Komponente wird als Pflichtfeld definiert, das ausgefüllt, selektiert oder bei der eine Auswahl vorgenommen werden muss.

  • RequiredError - Fehlermeldung die angezeigt wird, wenn die als Pflichtfeld definierte Formular-Komponente nicht ausgefüllt, selektiert oder wenn keine Auswahl vorgenommen wurde.

  • Rows - Definiert die Höhe einer Formular-Komponente in Zeilen. Eine Row entspricht ungefähr der Höhe eines Zeichens. Die Einstellung ist nur dann relevant, wenn in der Toolbox Height > ? eingestellt ist (Undefined) oder in einem AbsoluteLayout.

  • TabIndex - Definiert die Reihenfolge im Tab-Index. Der Tab-Index definiert die Reihenfolge mehrerer UI-Komponenten, die durch Drücken der Tab Taste nacheinander selektiert werden.

  • ReadOnly 
  • RightColumnCaption - Text für die Beschriftung der rechten Spalte.

  • Shortcut
Wichtige Events:
  • valueChange - Wird ausgelöst, wenn der Inhalt verändert wurde, u.a. durch Hinzufügen oder Löschen von Zeichen, jedoch erst wenn die UI-Komponente den Fokus verliert.

Databinding:
  • Daten-Container (Model) 
    • XdevBeanItemContainer - Standard Daten-Container. Die Zuweisung erfolgt mit der Methode setContainerDataSource.

      // Generates a new XdevBeanItemContainer 'productList'
      XdevBeanItemContainer<Product> productList = new XdevBeanItemContainer<Product>(Product.class);
       
      // Sets the XdevBeanItemContainer
      twinColSelect.setContainerDataSource(productList);
    • XdevLazyEntityContainer - Wird ausschließlich von RapidClipse verwendet, wenn die Property Entity > Auto query data selektiert ist.
Examples:
  • Selektiertes Objekt - Liefert das selektierte Objekt zurück (Entity) - Beispiel mit Category Entity

    BeanItem<Category> selectedItem = twinColSelect.getSelectedItem();
    Category category = selectedItem.getBean();

    oder

    Category Category = (Category)listSelect.getValue();

    oder - Liefert eine Liste aller selektierten Elemente 

    List<BeanItem<Category>> selectedItems = twinColSelect.getSelectedItems()
  • Selektierung zurücksetzen - Setzt die Selektierung auf den Ausgangszustand. Dies löst ein valueChange Event aus.

    twinColSelect.clear();
  • Fokus setzen - Weist dem XdevTwinColSelect den Focus zu. Dies kann ggf. ein focus Event auslösen.

    twinColSelect.focus();
Alle XdevTwinColSelect Methoden 

XDEV Software Corp. - One Embarcadero Center, San Francisco, CA 94111, US
Copyright © 2015. XDEV Software Corp. All rights reserved.