【问题标题】:flex binding to a base class property with class inheritanceflex 绑定到具有类继承的基类属性
【发布时间】:2010-02-09 15:30:58
【问题描述】:

假设我有一个名为 Base 的基类,它是可绑定的,并且具有这样的 String 属性:

[Bindable]
public class Base
{
    public var msg:String;

}

现在,有一个名为 Derived 的类:

[Bindable]
public class Derived extends Base
{
}

我正在尝试绑定到这样的 mxml 组件:

[Bindable]
private var d:Derived = new Derived();


<mx:Binding source="d.msg" destination="msg.text" />

其中 msg 是一些 textInput 字段。 我从编译器收到一条消息......

数据绑定将无法检测到“msg”的分配

数据绑定到基类有限制吗?我做错了什么?

【问题讨论】:

    标签: apache-flex data-binding inheritance


    【解决方案1】:

    尝试使用 getter 和 setter 将其转换为属性

    public class Base 
    {
        protected var _msg:String;
    
        [Bindable]
        public function get msg():String 
        {
            return _msg;
        }
    
        public function set msg(val:String):void 
        {
            _msg = val;
        }
    }
    

    【讨论】:

    • 我几乎不好意思报告清理项目并重建解决了问题 - 很抱歉浪费了您的时间,无论如何感谢 artemb
    • 这与在类中将特定的“var”声明为 [Bindable] 没有什么不同。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-05-07
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 2017-02-09
    • 1970-01-01
    相关资源
    最近更新 更多