Updating a String

I have a Label that is bound to a String in the PLC. When the user updates the PLC String, the Label does not update. Is there a way to get it to do this? I’ve added a dynamic property which is bound to the String.LEN and it updates automatically so I’ve tossed around the idea of watching the LEN and if the value changes, have the text field “reset”. I put the term “reset” in quotes because I’m not sure why the text is not automatically updating, nor do I know how to make it update. Help?

Are you using a Label component or a Text Field component? The label should update as soon as the tag changes if the text is bound to the tag.

I am using a Label. My Property Change Event check is working - only 2 issues:

  1. When the operator types a new message that happens to be exactly the same length (i.e. no change in String.LEN) then it won’t update.
  2. The old text is still in cache - when I type long text it displays. Then type a short text, I can see the new short text, but after the short text stops, the old long text is still showing.

Any ideas on how to “refresh” the string? Thanks!

I’m not getting a clear picture of what is going on here. Can you describe more precisely:

  1. What are all of the pieces involved? PLC, OPC server, versions, database, etc?
  2. Data Flow. A Label is bound to a string tag. I get that. Beyond that, I’m unclear. How is the operator making updates? Why is there a property change script?

Thanks for the follow up Carl - I called into Tech Support and we figured it out via trial & error. It turned out to be a HTML glitch. I needed the string to “wrap” and “center” so I was sending the “” in the string from the PLC. When you do this, the label gets really confused:


  1. Type this STRING “This is the Message of the Day” in the PLC tag.
  2. The Label shows “This is the Message of the Day”
  3. Change the PLC String to “No Message Today”
  4. The Label shows “No Message Todayage of the Day”

The Label won’t update the entire string (not sure why). So I removed that code from the string and we bound it as an expression:


Then the label started updating the entire STRING as intended. Thank you!