Verwenden Sie Datentrigger, um die Präsentation eines grafischen Elements zu ändern, wenn sich Daten im Modell geändert haben.
Übertragen auf das iPlus-Framework bedeutet dies: Wenn sich der Wert von einer oder mehreren Eigenschaften einer ACComponent-Instanz geändert haben, soll sich die Darstellung an der grafischen Oberfläche ändern.
Eine Lösungsmöglichkeit ist der Einsatz von Konvertern, auf die im Kapitel "Eigenschaften setzen und konvertieren" eingegangen wurde. Konverter haben den Nachteil, dass dazu Methoden programmiert und aufgerufen werden müssen und somit die Dynamisierung nicht rein deklarativ im XAML-Code erfolgt.
Mit Datentriggern kann eine Dynamisierung rein deklarativ erfolgen und ist daher die bessere Wahl.
Wir nehmen dazu erneut unser Rechteckbeispiel und führen eine Farbänderung des Rechtecks durch mittels Datentriggern:
- Drücken Sie die Taste "Data" um einen Datentrigger dem Style hinzuzufügen (1).
- Drücken Sie die Taste "One data item" wenn die Farbänderung nur von einer Eigenschaft aus dem Modell (ACComponent) sein soll (2).
- Ziehen Sie per "Drag & Drop" die entsprechende Eigenschaft auf das VBContent-Textfeld (3). In unserem Beispiel ist es die SensorState-Eigenschaft des NOT-AUS-Schalters (bzw. Sensors).
- Wählen Sie den Wert der Eigenschaft aus, bei dem der Datentrigger aktiv werden soll, um seine Präsentationsänderungsaufgaben auszuführen, die entweder in seiner Setters-Liste oder den Action-Listen eingetragen sind.
Im Beispiel möchten wir vorerst nur mit der Setters-Liste arbeiten, weil für Actions das seperate Kapitel "Animationen" gewidmet ist.
Um Setter hinzuzufügen, wechseln Sie in die Registerkarte "Setter" und fügen per "Add"-Taste die grafischen Eigenschaften hinzu, die der Datentrigger verändern soll:
Schließen Sie das Trigger-Fenster und wechseln in den XAML-Editor. Es wurde folgender Code generiert:
Das Feld "Binding" des Datatriggers wurde an die ACUrl der SensorState-Eigenschaft gebunden. Ein Datatrigger kann nur einen Wert binden. Müssen mehrere Eigenschaften berücksichtigt werden, gibt es zwei unterschiedliche Möglichkeiten. Entweder Sie verwenden
auf die in den folgenden Abschnitten näher eingegangen wird.