Automatische Änderung von Properties bei ApplyChanges

Hallo,

gibt es eine Möglichkeit, wie ich die vom User eingegebenen Werte im Konfigurationsformular beim Aufruf von ApplyChanges() vor dem Speichern als Property korrigieren kann? Oder ist das nicht möglich bzw. nicht erlaubt?

Ich würde gerne in einigen Fällen unterschiedliche Eingaben (Formate) erlauben, diese am Ende aber „normalisiert“ in der Property speichern.

Ich möchte z.B. in der ValidationTextBox die Eingabe eines Wertes in Groß-/Kleinbuchstaben oder mit Leerzeichen zulassen, den Wert aber anschließend in einem einheitlichen Format speichern und anzeigen. Kann ich diese Korrektur im Hintergrund automatisch vornehmen und den korrigierten Wert direkt als Property speichern oder muss ich die Eingabe vom User so als Property übernehmen und dann jedes Mal bei der Verarbeitung im Modul intern korrigieren?

Mir geht es nicht darum, die Eingabe grundsätzlich per RegEx einzuschränken oder den Wert im Formular mittels UpdateFormField() anders darzustellen, sondern darum, den eigegebenen Wert ggf. zu korrigieren und so abzuspeichern.
Hätte man bei allen Formularelementen ein onChange, onType, onClick etc. könnte man das ja darüber realisieren.

Nur als Vorschlag, Du könntest ja die Eingabe des Users unberührt lassen und die normalisierte Form in ein Attribut schreiben (RegisterAttributeXyz)!

Gruß Heiko

Ja, das ginge auch. Ich könnte auch damit leben und die Property vor jeder Benutzung „normalisieren“.

Die Frage war auch mehr akdaemischer Natur, ob die Manipulation der Property beim Übernehmen der Config grundsätzlich möglich und erlaubt ist oder ob man zwingend auf Alternativen, wie die von dir genannte gehen muss.

Nee, ist so nicht erlaubt bzw. angedacht!

Du kannst ja ein Button dazupacken „Eingabe normalisieren“ und dann UpdateFormField machen :smiley: :smiley: :smiley:

Aktuell geht dies nicht. (In C++, d.h. nativen Modulen können wir dies differenzieren; bei PHP-Modulen ist dies leider nicht möglich, da wir bisher keinen Callback dafür haben)

paresy