Verwenden von eigenen Format- und Analyseausdrücken in LiveBindings

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu LiveBindings in RAD Studio


Beim Binden von Steuerelementen, Eigenschaften oder Felder mit LiveBindings kann es manchmal nötig sein, die Daten an einem Ende einer Bindung zu modifizieren, bevor sie das andere Ende der Bindung erreichen. Beispielsweise könnten Sie bei einer Datenmenge mit einer Liste von Farbnamen in Großbuchstaben diese Namen in Kleinbuchstaben umwandeln, bevor Sie sie in einer Liste anzeigen. Häufig beziehen sich diese Änderungen auf beide Seiten der Bindung. Zum Beispiel könnten Sie beim Anzeigen von ISO-Datumsangaben aus einer Datenmenge diese Datumsangaben in das lokale Datumsformat konvertieren und alle vom Benutzer manuell eingegebenen Datumsangaben vor dem Speichern in der Datenmenge in das ISO-Format konvertieren.

Beim Binden von Steuerelementen, Eigenschaften und Feldern mit LiveBindings erstellen Sie eine Instanz einer Bindungsklasse, wie z. B. TLinkFillControlToField oder TLinkFillControlToProperty. Zu den Eigenschaften dieser Klassen zählen die beiden folgenden Eigenschaftstypen:

Festlegen von eigenen Formaten oder Analyseausdrücken

So legen Sie ein eigenes Format oder einen Analyseausdruck in einer bestehenden Bindung zwischen Steuerelementen, Feldern oder Eigenschaften fest:

  1. Öffnen Sie den LiveBindings-Designer, und wählen Sie die Zielbindung aus.
    Im LiveBindings-Designer werden die Bindungen als blaue Pfeile angezeigt, die zwei Felder verbinden. Wenn Sie auf einen Pfeil klicken, um ihn auszuwählen, wird er wie in der folgenden Abbildung gezeigt, dicker dargestellt:
    LiveBindingsDesignerUnselectedBinding.png LiveBindingsDesignerSelectedBinding.png
  2. Im Objektinspektor:
    • Um einen eigenen Formatausdruck anzugeben, suchen Sie den entsprechenden CustomFormat-Eigenschaftswert (z. B. FillHeaderCustomFormat oder FillValueCustomFormat), geben einen Bindungsausdruck, wie LowerCase(%s), ein, und drücken die Eingabetaste, um diesen neuen Eigenschaftswert zu speichern.
      ObjectInspectorCustomFormatLowerCase.png
    Durch Hinzufügen dieses Ausdrucks wird sichergestellt, dass sich der angegebene Ausdruck auf die Werte aus dem Quellsteuerelement, der Quelleigenschaft oder dem Quellfeld vor deren Übergabe an das Zielsteuerelement, die Zieleigenschaft oder das Zielfeld auswirkt.
    FormDesignerCapitalizedColorNameList.png FormDesignerLowerCaseColorNameList.png
    • Um einen benutzerdefinierten Analyseausdruck festzulegen, suchen Sie die entsprechende CustomFormat-Eigenschaft (z. B. FillHeaderCustomParse oder FillValueCustomParse), geben einen Bindungsausdruck, wie UpperCase(%s), ein, und drücken die Eingabetaste, um diesen neuen Eigenschaftswert zu speichern.
    Jetzt wirkt sich der angegebene Ausdruck auf die Eingabewerte aus, bevor sie in dem Quellsteuerelement, der Quelleigenschaft oder dem Quellfeld gespeichert werden.

Bindungsausdrücke

Der einfachste Bindungsausdruck, den Sie verwenden können, ist %s, wobei %s für den Quellwert steht. Das heißt, wenn Sie einfach %s in einer benutzerdefinierten Formateigenschaft einer Bindung angeben, wird der Quellwert nicht geändert; Sie erzielen das gleiche Ergebnis wie bei einer leeren benutzerdefinierten Formateigenschaft.

Zugreifen auf das Quellobjekt

Sie können auch mit Self.Owner auf das Quellobjekt zugreifen; damit erhalten Sie nicht nur Zugriff auf die der Bindung zugeordneten Daten, sondern auch auf alle Daten aus dem Quellobjekt. Mit den folgenden Ausdrücken können Sie auf Daten aus dem Quellobjekt zugreifen:

  • Self.Owner.Feld.Eigenschaft. Zum Beispiel: Self.Owner.CUSTOMER.Text.
    Hinweis: Sie können diese Syntax verwenden, wenn der Name des Quellobjekts ("CUSTOMER" im obigen Beispiel) eine gültige ID ist. Wenn das Quellobjekt ein Feld ist, könnte dessen Name kein gültiger Name sein; in diesem Fall müssen Sie stattdessen die folgende Syntax verwenden:
  • Self.Owner.FieldByName('Feld').Eigenschaft.
    Zum Beispiel: Self.Owner.FieldByName('CUSTOMER').Text.

Siehe Video: Using binding expressions in the CustomFormat property of a TLinkPropertyToField component.

Verwenden von mathematischen Symbolen

Sie können in Ausdrücken die folgenden mathematischen Symbole verwenden:

  • Konstanten: nil True False Pi
  • Arithmetische Operatoren: + - * /
  • Logische Operatoren: = <> < <= > >=
  • Runde Klammern, (), um die Operatorrangfolge zu ändern.

Verketten von Strings

Um dem Quellwert ein Präfix oder Suffix hinzuzufügen, setzen Sie diesen zusätzlichen String in einfache Anführungszeichen ( ' ) und verketten mit einem Pluszeichen (+) diesen String mit dem Quell-String. Zum Beispiel: 'Hello, ' + %s + '!'.

Verwenden von LiveBindings-Methoden

Sie können in Ihren benutzerdefinierten Bindungsausdrücken LiveBindings-Methoden verwenden. Beispielsweise könnten Sie einen Ausdruck wie 'I like ' + LowerCase(%s) + ' crayons' schreiben, wobei der Quell-String, %s, in Kleinbuchstaben umgewandelt würde.

Hinweis: Bei LiveBindings-Methoden wird die Groß-/Kleinschreibung berücksichtigt. Wenn der Name der LiveBindings-Methode LowerCase lautet, funktionieren Lowercase oder lowercase nicht.

RAD Studio enthält viele Standard-LiveBindings-Methoden, wie LowerCase, UpperCase oder Format, die Sie verwenden können. Unter Standard-LiveBindings-Methoden finden Sie eine Liste dieser Methoden und die entsprechende Dokumentation.

Sie können auch eigene LiveBindings-Methoden erstellen. Siehe Erstellen eigener LiveBindings-Methoden.

Beim Binden von Steuerelementen, Eigenschaften oder Feldern mit dem LiveBindings-Designer wird dem Formular eine TBindingsList-Komponente hinzugefügt. Sie können die Eigenschaft Methods dieser Komponente öffnen, um eine Liste der verfügbaren LiveBindings-Methoden (von RAD Studio bereitgestellte und eigene) anzuzeigen, die Sie in Ihren eigenen Bindungsausdrücken verwenden können.

Siehe auch