Answers

Question and Answer:

  Home  Adobe Flex Actionscript

⟩ What is the difference between ChangeWatcher.watch, and BindingUtils.bindProperty?

ChangeWatcher:

Acts like the watch on AS2. It watches a variable for changes and when something happens fires an event. Make sure you call the canWatch to ensure that you can watch it!

There are 3 ways to specify the second parameter, the chain.

1. A String containing the name of a public bindable property of the host object.

ChangeWatcher.watch(this, "myvar", handler)

2. An Object in the form: { name: property name, access: function(host) { return host[name] } }. The Object contains the name of a public bindable property, and a function which serves as a getter for that property.

ChangeWatcher.watch(this, { name:"myvar", getter: function():String { return "something" }}, handler);

3. A non-empty Array containing any combination of the first two options. This represents a chain of bindable properties accessible from the host. For example, to watch the property host.a.b.c, call the method as: watch(host, ["a","b","c"]

BindingUtils.bindProperty

Works pretty much the same way as the watch, but instead of having to handle and event it allows you to immediately bind two properties one-way.

The first two parameters are for the the target, the second parameters are the triggers.

BindingUtils.bindProperty( this, "va1", this, "var2");

Note : Make sure you add the flex framework.swc to your project Library Path to have access to the mx.binding.util class.

 194 views

More Questions for you: