Qt Reference Documentation

QML Binding Element

The Binding element allows arbitrary property bindings to be created. More...

  • List of all members, including inherited members
  • Properties

    Detailed Description

    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 Documentation

    property : string

    The property to be updated.


    target : Object

    The object to be updated.


    value : any

    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
     }

    X

    Thank you for giving your feedback.

    Make sure it is related to this specific page. For more general bugs and requests, please use the Qt Bug Tracker.