Feldkennzeichen bei MergeFields ändern

  • Ich dachte ich finde durch Debugging die richtige Stelle, aber leider erfolglos:

    Ich möchte das rote <<Feldname>> zum Beispiel durch '[' Feldname ']' ersetzen da unsere Anwender das so gewohnt sind.

    Gibt es da eine Möglichkeit?

    Und eine zweite Frage in diesem Zusammenhang: kann man verhindern, dass der Nutzer solche Felder löscht?

    Ciao

    Stefan

    • Offizieller Beitrag

    Diese Kennzeichen werden als "InsertPoints" bezeichnet, deren Anzeige kontrolliert InsertPointAttr.

    Im Manual werden ein paar Möglichkeiten unter "Customize Field Display" beschrieben.

    WPRichText1.InsertPointAttr.CodeOpeningText := '[';

    WPRichText1.InsertPointAttr.CodeClosingText := ']';

    Um die Kennzeichen zu schützen das zugehörige Flag in der property ProtectedProp setzen.

  • Folgendes schützt bei Verwendung der Del-Taste vor Löschen der Feldmarkierungen wenn einzelne Zeichen gelöscht werden:

    Code
    WPRichText1.ProtectedProp :=WPRichText1.ProtectedProp +[ppisInsertPoint];

    Wird aber ein Textbereich, welcher Felder enthält, markiert und Del gedrückt, ist alles incl. der Felder weg :-( Aber auch da wird es bestimmt einen Trick geben?

    Ciao Stefan Edit:

    ich gebe mir mal selbst die Antwort:

    Code
    WPRichText1.ProtectedProp := WPRichText1.ProtectedProp +
        [ppisInsertPoint, ppIsMergedText, ppProtectSelectedTextToo];

    bringt den gewünschten Effekt :-)

    Einmal editiert, zuletzt von skoschke (25. Juli 2018 um 12:53)