Property binding is perhaps the most important concept to understand when designing a project using the Vision module. It is primarily through property binding that you bring windows to life, and have them do useful things. A property binding simply links one component's property to another on the same window.

Video recorded using: Ignition 8.1


(open in window)

[00:00] In this lesson, I'll demonstrate how to dynamically update a vision window with a property binding. A property binding is one of the most important concepts to understand when designing a project in Vision. I have a cylindrical tank on my window and as you know components have properties that decide how they look and behave. If I change the value property of the tank, we see that the appearance of the tank level changes to reflect that property. If we want this property to dynamically update we'll have to set up a binding. In order to do this, I can click the binding icon that can be found to the right of each property down here in the property editor. Bindings can be set up to update the value based on a tag and expression another property on the same window or a SQL query. Let's say I want to update this value based on another component. I'll close out the window and drag a slider onto the window underneath my tank. Now we can go back to add a binding to the Tank's value and choose a property binding.

[01:03] I'll find the slider component expand its properties and I can click the value property. It's important to make sure that you choose a similar data type. Otherwise, you can run into problems. I'll hit OK and add the binding. Now that I've added the binding you can see that the name of the properties bolded and there's a link icon next to it. If you have multiple components with multiple property bindings on your window a useful tip to visualize these bindings is to go to the designer's menu bar and click view go to dependencies and click show all this will connect bound components with a line so you can quickly see what's linked to what I'll set this back to show none real quick. Now that the binding is set up I can test it by putting the designer in a preview mode. And when I change the slider value the tank level changes with it. On top of linking to another component's properties we can set up property bindings on UDT properties as well. On my root container. I have a custom property for a UDT type called tank and it has a level property. I'll go back to the binding on the tank and I can expand the tank UDT and bind to the level PV property.

You are editing this transcript.

Make any corrections to improve this transcript. We'll review any changes before posting them.