如何使自定义AS3类可用于数据绑定?

问题描述

| 假设我有一个costum actionscript类。
public class myClass

{
       private var myVariable:ArrayCollection;
...
}
还假设我有一个不同的类,该类更改了另一个变量,该变量具有元数据标签[Bindable]。每当更改另一个类时,我必须在这两个类中实施哪些方法和事件以进行myVariable更改?     

解决方法

        如果将
myVariable
公开,则可以使用
[BindingUtils.bindProperty()][1]
public class MyClass
{
    public var myVariable:ArrayCollection;

    public function MyClass(other:OtherClass) {

        BindingUtils.bindProperty(this,\"myVariable\",other,\"propertyName\");

    }
}
如果您希望将
myVariable
设为不公开,则可以使用
[BindingUtils.bindSetter()][2]
public class MyClass
{
    private var myVariable:ArrayCollection;

    public function MyClass(other:OtherClass) {

        BindingUtils.bindSetter(
            function(newVal:*):void {
                this.myVariable = newVal;
            },\"propertyName\");

    }
}