The Binding element allows arbitrary property bindings to be created. More...
Sometimes it is necessary to bind to a property of an object that wasn't directly instantiated by QML - generally a property of a class exported to QML by C++. In these cases, regular property binding doesn't work. Binding allows you to bind any value to any property.
For example, imagine a C++ application that maps an "app.enteredText" property into QML. You could use Binding to update the enteredText property like this.
TextEdit { id: myTextField; text: "Please type here..." } Binding { target: app; property: "enteredText"; value: myTextField.text }
Whenever the text in the TextEdit is updated, the C++ property will be updated also.
If the binding target or binding property is changed, the bound value is immediately pushed onto the new target.
See also QtDeclarative.
property : string |
The property to be updated.
The value to be set on the target object and property. This can be a constant (which isn't very useful), or a bound expression.
when : bool |
This property holds when the binding is active. This should be set to an expression that evaluates to true when you want the binding to be active.
Binding { target: contactName; property: 'text' value: name; when: list.ListView.isCurrentItem }